2024-06-10 20:09:31

by Abhinav Jain

[permalink] [raw]
Subject: [PATCH] selftests: filesystems: add return value checks

Add ksft_exit_fail_msg() return value checks for fchdir() & chroot()
to address the selftests statmount test compile warnings

statmount_test.c:127:2: warning: ignoring return value of ‘fchdir’,
declared with attribute warn_unused_result [-Wunused-result]
127 | fchdir(orig_root);
| ^~~~~~~~~~~~~~~~~
statmount_test.c:128:2: warning: ignoring return value of ‘chroot’,
declared with attribute warn_unused_result [-Wunused-result]
128 | chroot(".");
| ^~~~~~~~~~~

Signed-off-by: Abhinav Jain <[email protected]>
---
.../filesystems/statmount/statmount_test.c | 13 +++++++++++--
1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/filesystems/statmount/statmount_test.c b/tools/testing/selftests/filesystems/statmount/statmount_test.c
index e6d7c4f1c85b..b5e1247233b6 100644
--- a/tools/testing/selftests/filesystems/statmount/statmount_test.c
+++ b/tools/testing/selftests/filesystems/statmount/statmount_test.c
@@ -125,8 +125,17 @@ static uint32_t old_root_id, old_parent_id;

static void cleanup_namespace(void)
{
- fchdir(orig_root);
- chroot(".");
+ int ret;
+
+ ret = fchdir(orig_root);
+ if (ret == -1)
+ ksft_exit_fail_msg("changing current directory: %s\n",
+ strerror(errno));
+
+ ret = chroot(".");
+ if (ret == -1)
+ ksft_exit_fail_msg("chroot: %s\n", strerror(errno));
+
umount2(root_mntpoint, MNT_DETACH);
rmdir(root_mntpoint);
}
--
2.34.1



2024-06-11 15:32:04

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests: filesystems: add return value checks

On 6/10/24 14:09, Abhinav Jain wrote:
> Add ksft_exit_fail_msg() return value checks for fchdir() & chroot()
> to address the selftests statmount test compile warnings
>
> statmount_test.c:127:2: warning: ignoring return value of ‘fchdir’,
> declared with attribute warn_unused_result [-Wunused-result]
> 127 | fchdir(orig_root);
> | ^~~~~~~~~~~~~~~~~
> statmount_test.c:128:2: warning: ignoring return value of ‘chroot’,
> declared with attribute warn_unused_result [-Wunused-result]
> 128 | chroot(".");
> | ^~~~~~~~~~~
>
> Signed-off-by: Abhinav Jain <[email protected]>
> ---
> .../filesystems/statmount/statmount_test.c | 13 +++++++++++--
> 1 file changed, 11 insertions(+), 2 deletions(-)
>
> diff --git a/tools/testing/selftests/filesystems/statmount/statmount_test.c b/tools/testing/selftests/filesystems/statmount/statmount_test.c
> index e6d7c4f1c85b..b5e1247233b6 100644
> --- a/tools/testing/selftests/filesystems/statmount/statmount_test.c
> +++ b/tools/testing/selftests/filesystems/statmount/statmount_test.c
> @@ -125,8 +125,17 @@ static uint32_t old_root_id, old_parent_id;
>
> static void cleanup_namespace(void)
> {
> - fchdir(orig_root);
> - chroot(".");
> + int ret;
> +
> + ret = fchdir(orig_root);
> + if (ret == -1)
> + ksft_exit_fail_msg("changing current directory: %s\n",
> + strerror(errno));
> +
> + ret = chroot(".");
> + if (ret == -1)
> + ksft_exit_fail_msg("chroot: %s\n", strerror(errno));
> +
> umount2(root_mntpoint, MNT_DETACH);
> rmdir(root_mntpoint);
> }


There is another prior patch that fixes the problem
https://patchwork.kernel.org/project/linux-kselftest/patch/[email protected]/

thanks,
-- Shuah