[LTP] [PATCH 1/1] safe_macros: Fix bcachefs failure old kernel

Petr Vorel pvorel@suse.cz
Thu Jan 11 16:05:53 CET 2024


LTP with bcachefs-tools and kernel < 6.7 fails (more tests):

    # LTP_SINGLE_FS_TYPE=bcachefs ./chdir01
    ...
    tst_supported_fs_types.c:57: TINFO: mkfs.bcachefs does exist
    tst_test.c:1669: TINFO: === Testing on bcachefs ===
    tst_test.c:1117: TINFO: Formatting /dev/loop0 with bcachefs opts=''
    extra opts=''
    tst_test.c:1131: TINFO: Mounting /dev/loop0 to
    /tmp/LTP_chdwqhGtZ/mntpoint fstyp=bcachefs flags=0
    tst_test.c:1131: TBROK: mount(/dev/loop0, mntpoint, bcachefs, 0, (nil))
    failed: ENODEV (19)

The problem is that on FUSE support we expect there is FUSE bcachefs
implementation. bcachefs supports fusemount, but let's skip testing atm.

Fixes: 94802606e ("lib: Add support bcachefs filesystem to .all_filesystems")
Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
Hi all,

I'm sorry, although man bcachefs(8) mentions fusemount, I haven't
figured out how to mount filesystem. Am I missing something?

Also, maybe for the start I would prefer to to test just kernel
functionality (no fuse).

Kind regards,
Petr

 lib/tst_supported_fs_types.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/tst_supported_fs_types.c b/lib/tst_supported_fs_types.c
index 369836717..21765c370 100644
--- a/lib/tst_supported_fs_types.c
+++ b/lib/tst_supported_fs_types.c
@@ -96,6 +96,11 @@ static enum tst_fs_impl has_kernel_support(const char *fs_type)
 
 	SAFE_RMDIR(template);
 
+	if (!strcmp(fs_type, "bcachefs") && tst_kvercmp(6, 7, 0) < 0) {
+		tst_res(TINFO, "bcachefs skipped on kernel < 6.7");
+		return TST_FS_UNSUPPORTED;
+	}
+
 	/* Is FUSE supported by kernel? */
 	if (fuse_supported == -1) {
 		ret = open("/dev/fuse", O_RDWR);
-- 
2.43.0



More information about the ltp mailing list