[LTP] LTP release preparations

Petr Vorel pvorel@suse.cz
Thu May 4 12:28:36 CEST 2023


> > Hi!
> > > * nfs08.sh: Skip on vfat
> > > https://patchwork.ozlabs.org/project/ltp/patch/20230502151348.3677809-1-pvorel@suse.cz/

> > This is workaround for bugs found by the "run nfs on all fs" patch,
> > right?

> Well, this is the problem which was found by this patchset. If you use TMPDIR
> with vfat or exfat (unlikely, I know) on current master, it will fail.
> I tested it on both loop device (demonstrated below) and on separate disc in VM.

> dd if=/dev/zero of=/tmp/dev bs=1M count=500
> losetup /dev/loop0 /tmp/dev
> mkfs.exfat /dev/loop0
> mkdir -p /export
> mount /dev/loop0 /export
> df -hT /export/
> Filesystem     Type  Size  Used Avail Use% Mounted on
> /dev/loop0     vfat  500M     0  500M   0% /export

> PATH="/opt/ltp/testcases/bin:$PATH" TMPDIR=/export nfs08.sh -v 4 -t tcp
> ...
> nfs08 1 TINFO: timeout per run is 0h 5m 0s
> nfs08 1 TINFO: mount.nfs: (linux nfs-utils 2.6.3)
> nfs08 1 TINFO: setup NFSv4, socket type tcp
> nfs08 1 TINFO: Mounting NFS: mount -v -t nfs -o proto=tcp,vers=4 10.0.0.2:/export/LTP_nfs08.R9JOL8zozk/4/tcp /export/LTP_nfs08.R9JOL8zozk/4/0
> nfs08 1 TINFO: testing NFS cache invalidation for directories
> 1
> nfs08 1 TPASS: ls | grep 1 passed as expected
> nfs08 1 TFAIL: ls | grep 2 failed unexpectedly

> Actually, nfs08.sh not working on vfat and exfat
> => therefore nfs_lib.sh should be without TST_SKIP_FILESYSTEMS (currently all tests whitelists exfat)
> and nfs08.sh should have: TST_SKIP_FILESYSTEMS="exfat,vfat"

> umount /export
> umount: /export: target is busy.

> fuser -vm /dev/loop0
>                      USER        PID ACCESS COMMAND
> /dev/loop0:          root     kernel mount /export
>                      root     kernel knfsd /export

> => Forced me to umount with -l or reboot, regardless used filesystem on
> /dev/loop0.  This is fixed in this patchset which uses TST_ALL_FILESYSTEMS,
> but I'd prefer to merge it instead of fixing master.

> This is reproducible even if I just add new device (i.e. not a loop device) to VM.

> > I suppose that it may be better not to enable nfs on all filesystems for
> > this release so that we have time to figure out what is wrong before
> > next release.

> > I really do not like applying "temporary" workarounds for real bugs in
> > the LTP codebase. There is always danger of "temporary" being forgotten
> > and we end up masking the real bug for eternity.

> We're masking the problems, because by default we test on what's on /tmp
> (often tmpfs, which is unlikely to be used for NFS or ext4 or btrfs).

> I need to test more old distros, I suspect that nfs-utils 1.3.3 has problems
> with vfat, exfat, tmpfs and fuse, which is in Debian 11 (bullseye).

> => Maybe, as a start we could decide to run nfs_lib.sh only on modern linux
> filesystems: i.e. btrfs, ext4, xfs
> We could have:
> TST_SKIP_FILESYSTEMS="btrfs,exfat,ext2,ext3,fuse,ntfs,vfat,tmpfs"

I meant here
TST_SKIP_FILESYSTEMS="exfat,ext2,ext3,fuse,ntfs,vfat,tmpfs"
(i.e. to run on btrfs, ext4, xfs only)

Kind regards,
Petr

> That would shorten the runtime and have more test coverage.
> WDYT? I'm about to send v5 and run tests in the loop. Shell I include this
> change?

> Kind regards,
> Petr


More information about the ltp mailing list