On Mon, Jun 23, 2025 at 12:22 PM Muhammad Usama Anjum usama.anjum@collabora.com wrote:
On 6/20/25 7:55 PM, Chen Linxuan wrote:
On Fri, Jun 20, 2025 at 10:46 PM Muhammad Usama Anjum usama.anjum@collabora.com wrote:
On 6/20/25 8:50 AM, Chen Linxuan wrote:
When running `make kselftest`, the following compilation warning was encountered:
mount-notify_test.c: In function ‘fanotify_rmdir’: mount-notify_test.c:490:17: warning: ignoring return value of ‘chdir’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 490 | chdir("/"); | ^~~~~~~~~~
Signed-off-by: Chen Linxuan chenlinxuan@uniontech.com
Changes in v2:
- Apply changes suggested by Shuah Khan
- Link to v1: https://lore.kernel.org/all/20250610020758.2798787-2-chenlinxuan@uniontech.c...
.../filesystems/mount-notify/mount-notify_test.c | 15 ++++++++++----- .../mount-notify/mount-notify_test_ns.c | 15 ++++++++++----- 2 files changed, 20 insertions(+), 10 deletions(-)
diff --git a/tools/testing/selftests/filesystems/mount-notify/mount-notify_test.c b/tools/testing/selftests/filesystems/mount-notify/mount-notify_test.c index 5a3b0ace1a88c..f8e0c6b06e2d9 100644 --- a/tools/testing/selftests/filesystems/mount-notify/mount-notify_test.c +++ b/tools/testing/selftests/filesystems/mount-notify/mount-notify_test.c @@ -458,12 +458,17 @@ TEST_F(fanotify, rmdir) ASSERT_GE(ret, 0);
if (ret == 0) {
chdir("/");
unshare(CLONE_NEWNS);
mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL);
umount2("/a", MNT_DETACH);
if (chdir("/"))
Please use the APIs provided by the kselftest_harness.h instead of checking return types manually. For example: use ASSERT_EQ(chdir("/", 0)).
Are you sure?We're in a forked sub process here.
ASSERT_* are macros. They can be used anywhere. Please give it a try.
V3: https://lore.kernel.org/all/20250623045711.3564655-2-chenlinxuan@uniontech.c...
exit(-1);
if (unshare(CLONE_NEWNS))
exit(-1);
if (mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL))
exit(-1);
if (umount2("/a", MNT_DETACH))
exit(-1); // This triggers a detach in the other namespace
rmdir("/a");
if (rmdir("/a"))
exit(-1); exit(0); } wait(NULL);
diff --git a/tools/testing/selftests/filesystems/mount-notify/mount-notify_test_ns.c b/tools/testing/selftests/filesystems/mount-notify/mount-notify_test_ns.c index d91946e69591a..d6a6a7ee87028 100644 --- a/tools/testing/selftests/filesystems/mount-notify/mount-notify_test_ns.c +++ b/tools/testing/selftests/filesystems/mount-notify/mount-notify_test_ns.c @@ -486,12 +486,17 @@ TEST_F(fanotify, rmdir) ASSERT_GE(ret, 0);
if (ret == 0) {
chdir("/");
unshare(CLONE_NEWNS);
mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL);
umount2("/a", MNT_DETACH);
if (chdir("/"))
exit(-1);
if (unshare(CLONE_NEWNS))
exit(-1);
if (mount("", "/", NULL, MS_REC|MS_PRIVATE, NULL))
exit(-1);
if (umount2("/a", MNT_DETACH))
exit(-1); // This triggers a detach in the other namespace
rmdir("/a");
if (rmdir("/a"))
exit(-1); exit(0); } wait(NULL);