[LTP] [PATCH] syscalls/mount03: Add statfs f_flags member check
Petr Vorel
pvorel@suse.cz
Sat Oct 22 00:13:51 CEST 2022
Hi Xu,
Reviewed-by: Petr Vorel <pvorel@suse.cz>
> static void run(unsigned int n)
> {
> struct tcase *tc = &tcases[n];
> + struct statfs stfs;
> tst_res(TINFO, "Testing flag %s", tc->desc);
> @@ -159,6 +160,11 @@ static void run(unsigned int n)
> if (tc->test)
> tc->test();
> + SAFE_STATFS(MNTPOINT, &stfs);
> + if (stfs.f_flags & (n == 3 ? MS_REMOUNT : tc->flag))
Wouldn't it be better to add another struct member for this check?
See patch below.
Kind regards,
Petr
> + tst_res(TPASS, "statfs() gets the correct mount flag");
> + else
> + tst_res(TFAIL, "statfs() gets the incorrect mount flag");
> cleanup();
> }
diff --git testcases/kernel/syscalls/mount/mount03.c testcases/kernel/syscalls/mount/mount03.c
index 297f89838..c4d3c110a 100644
--- testcases/kernel/syscalls/mount/mount03.c
+++ testcases/kernel/syscalls/mount/mount03.c
@@ -114,16 +114,18 @@ static void test_noatime(void)
TST_EXP_EQ_LI(st.st_atime, atime);
}
-#define FLAG_DESC(x) .flag = x, .desc = #x
+#define FLAG_DESC(x) .flag = x, .flag2 = x, .desc = #x
+#define FLAG_DESC2(x) .flag2 = x, .desc = #x
static struct tcase {
unsigned int flag;
+ unsigned int flag2;
char *desc;
void (*test)(void);
} tcases[] = {
{FLAG_DESC(MS_RDONLY), test_rdonly},
{FLAG_DESC(MS_NODEV), test_nodev},
{FLAG_DESC(MS_NOEXEC), test_noexec},
- {MS_RDONLY, "MS_REMOUNT", test_remount},
+ {MS_RDONLY, FLAG_DESC2(MS_REMOUNT), test_remount},
{FLAG_DESC(MS_NOSUID), test_nosuid},
{FLAG_DESC(MS_NOATIME), test_noatime},
};
@@ -161,7 +163,7 @@ static void run(unsigned int n)
tc->test();
SAFE_STATFS(MNTPOINT, &stfs);
- if (stfs.f_flags & (n == 3 ? MS_REMOUNT : tc->flag))
+ if (stfs.f_flags & tc->flag2)
tst_res(TPASS, "statfs() gets the correct mount flag");
else
tst_res(TFAIL, "statfs() gets the incorrect mount flag");
More information about the ltp
mailing list