Re: [LTP] [PATCH 1/3] ioctl_ficlone02.c: set all_filesystems to zero

Cyril Hrubis
2024-12-02T13:59:44Z

Hi!
> The code to skip filesystems in the case of all filesystems is in the
> run_tcase_per_fs() function:
>
> static int run_tcases_per_fs(void)
> {
> int ret = 0;
> unsigned int i;
> const char *const *filesystems = tst_get_supported_fs_types(tst_test->skip_filesystems);
>
> The skip_filesystems array is passed to the tst_get_supporte_fs_types()
> function which filters out them.

Perhaps you mean that the skiplist does not work with .all_filesystems
_and_ the LTP_SINGLE_FS_TYPE environment variable?

I guess that we need:

diff --git a/lib/tst_supported_fs_types.c b/lib/tst_supported_fs_types.c
index bbbb8df19..49b1d7205 100644
--- a/lib/tst_supported_fs_types.c
+++ b/lib/tst_supported_fs_types.c
@@ -159,6 +159,10 @@ const char **tst_get_supported_fs_types(const char *const *skiplist)

if (only_fs) {
tst_res(TINFO, "WARNING: testing only %s", only_fs);
+
+ if (tst_fs_in_skiplist(only_fs, skiplist))
+ tst_brk(TCONF, "Requested filesystems is in test skiplist");
+
if (tst_fs_is_supported(only_fs))
fs_types[0] = only_fs;
return fs_types;

--
Cyril Hrubis
chrubis@suse.cz