[LTP] [PATCH v4 3/4] nfs05.sh: Lower down the default values

Petr Vorel pvorel@suse.cz
Wed May 3 12:08:15 CEST 2023


Hi all,

> Hi all,

> > nfs05_make_tree.c runs make which needs on Btrfs quite a lot of
> > temporary space. This is a preparation for the next commit which
> > start using all filesystems via TST_ALL_FILESYSTEMS=1. Currently we use
> > 300 MB, which was not enough for Btrfs:

> Also, based on this detection we could add support for tst_device acquire SIZE
> into tst_test.sh to support more than the default 300 MB (as we see the actual
> use is obviously less for some filesystems). This would need to check size with
> tst_fs_has_free.

> Even we don't add this feature, it'd be more friendly to check for space
> before creating the loop device:

> if ! tst_fs_has_free $TST_TMPDIR 300MB; then
> 	tst_brkm TCONF "Insufficient disk space to create a backing file for loop device"
> fi

> To be honest, I'd like to merge this patchset first, the rest can wait after the
> release.

> Kind regards,
> Petr

> > Filesystem     Type      Size  Used Avail Use% Mounted on
> > /dev/loop0     btrfs     300M   62M   20K 100% /tmp/LTP_nfs05.Vau10kcszO/mntpoint

> > After lowering the default values 96% (58M) is being used.

> > Proper solution would be to detect available size in nfs05_make_tree.c
> > and lower down values based on free space.

> > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> > ---
> > New in v4.

> >  testcases/network/nfs/nfs_stress/nfs05.sh | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)

> > diff --git a/testcases/network/nfs/nfs_stress/nfs05.sh b/testcases/network/nfs/nfs_stress/nfs05.sh
> > index c18ef1ab4..34151b67a 100755
> > --- a/testcases/network/nfs/nfs_stress/nfs05.sh
> > +++ b/testcases/network/nfs/nfs_stress/nfs05.sh
> > @@ -8,8 +8,8 @@

> >  # Created by: Robbie Williamson (robbiew@us.ibm.com)

> > -DIR_NUM=${DIR_NUM:-"10"}
> > -FILE_NUM=${FILE_NUM:-"30"}
> > +DIR_NUM=${DIR_NUM:-"8"}
> > +FILE_NUM=${FILE_NUM:-"28"}

In the end these values are needed, when testing on systems with 64KB page size:

DIR_NUM=${DIR_NUM:-"5"}
FILE_NUM=${FILE_NUM:-"20"}
THREAD_NUM=${THREAD_NUM:-"5"}

Looking at PAGE_SIZE_LESS_THAN_256KB, CONFIG_PAGE_SIZE_LESS_THAN_256KB (option
for all archs) and checking arch dependent configs I see that there can be 4KB,
8KB, 16KB, 32KB, 64KB, 256KB (each arch allows only some of them). Also
filesystems evolve, thus finding safe value for *all* filesystems on different
page sizes on different kernel versions might be a bit complicated.

Kind regards,
Petr

> >  THREAD_NUM=${THREAD_NUM:-"8"}
> >  TST_NEEDS_CMDS="make gcc"
> >  TST_TESTFUNC="do_test"


More information about the ltp mailing list