Re: [LTP] [PATCH 1/1] lib: Add support bcachefs filesystem

Petr Vorel
2024-05-07T17:10:19Z

Hi all,

> > Hi!
> > > bcachefs has been merged into v6.7-rc1 [1]. Let's add it's support to
> > > LTP .all_filesystems = 1 and TST_ALL_FILESYSTEMS=1.

> > > [1] https://lwn.net/Articles/934692/

> > > Suggested-by: Cyril Hrubis <chrubis@suse.cz>
> > > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> > > ---
> > > Hi,

> > > this should be merged after v6.7 is released.

> > Agreed, although it's unlikey that they will pull bcachefs off from the
> > tree now. Any way I think that we should add the support to the next
> > release.

> Yep, now it's 6.7-rc4. I'll prepare v2

> > > So far I haven't tested all LTP tests on bcachefs temporary directory.
> > > I have only tested tests which use .all_filesystems = 1 or TST_ALL_FILESYSTEMS=1.
> > > So far it looks like there are only a few tests failing:

> > > statvfs01.c:44: TFAIL: creat(valid_fname, 0444) failed: ENAMETOOLONG (36)

> > That strange, that would mean that statvfs() reports possibly wrong
> > f_namemax. Looking at the code the f_namemax is initialized to
> > BCH_NAME_MAX in bch2_statfs().

> > And the dirent_create_key() does:

> > if (name->len > BCH_NAME_MAX)
> > return ERR_PTR(-ENAMETOOLONG);

> > That does not look like there is any room for a failure. Maybe we can
> > print the buf.f_namemax value in the test and check if it's 512 since
> > that is the value of BCH_NAME_MAX.

FYI Unfortunately ENAMETOOLONG is still problem on statvfs() on bcachefs.

Kind regards,
Petr

...