fstests: Fix block device requirements and manual scratch mounts

Some tests require the scratch volume to be a block device,
although they don't do anything block device specific like
the device mapper tests. They actually only require a local
device and fail with network or overlay pseudo mount devices.

The same tests also try to mount the scratch device manually
after running _scratch_mkfs. For UBIFS, _scratch_mkfs simply
truncates the UBI volume and relies on the kernel to re-format
the volume on the next mount. This fails if the fs type is not
specified explicitly when mounting.

This patch replaces the block device requirement with a
generic check for a local device and adds a filesystem
specification to all manual mounts of the scratch device
to a mount point.

Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
This commit is contained in:
David Oberhollenzer
2017-06-07 10:20:47 +02:00
committed by Eryu Guan
parent 62de87749a
commit 1cc2487f50
4 changed files with 14 additions and 14 deletions
+4 -4
View File
@@ -72,7 +72,7 @@ _supported_fs generic
_supported_os Linux
_require_test
_require_scratch
_require_block_device $SCRATCH_DEV
_require_local_device $SCRATCH_DEV
fs_stress()
{
@@ -120,7 +120,7 @@ start_test()
local type=$1
_scratch_mkfs >$seqres.full 2>&1
_get_mount $SCRATCH_DEV $MNTHEAD
_get_mount -t $FSTYP $SCRATCH_DEV $MNTHEAD
$MOUNT_PROG --make-"${type}" $MNTHEAD
mkdir $mpA $mpB $mpC
}
@@ -143,7 +143,7 @@ run()
start_test private
echo "make-$cmd a $orgs mount"
_get_mount $SCRATCH_DEV $mpA
_get_mount -t $FSTYP $SCRATCH_DEV $mpA
mkdir -p $mpA/dir 2>/dev/null
$MOUNT_PROG --make-shared $mpA
@@ -165,7 +165,7 @@ run()
find_mnt
else
for m in $mpA $mpB $mpC; do
_get_mount $SCRATCH_DEV $m/dir
_get_mount -t $FSTYP $SCRATCH_DEV $m/dir
fs_stress $m/dir
find_mnt
_put_mount