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

pvorel pvorel@suse.de
Thu Jan 11 16:13:47 CET 2024


Hi,

I'm sorry, I haven't updated the subject, it should have been:
"tst_supported_fs_types: Skip bcachefs on old kernel"

Kind regards,
Petr

On 2024-01-11 16:05, Petr Vorel wrote:
> 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);


More information about the ltp mailing list