mirror of
https://github.com/linux-apfs/apfstests.git
synced 2026-05-01 15:01:44 -07:00
ext4/306: avoid failures caused by incompatible mount options
ext4/306 will fail when mounting the ext3 file system it creates if an ext3-incompatible mount option is applied by _scratch_mount. This can happen if EXT_MOUNT_OPTIONS is defined appropriately in the test environment. For example, the block_validity option is commonly used to enhance ext4 testing, and it is not supported by ext3. Fix this by instead creating an ext4 file system without extents as a functionally equivalent substitute. This will also eliminate a dependency for ext3 support on the test system. Signed-off-by: Eric Whitney <enwlinux@gmail.com> Reviewed-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: Dave Chinner <david@fromorbit.com>
This commit is contained in:
committed by
Dave Chinner
parent
8ebabf7298
commit
138ea5c76c
+8
-15
@@ -45,29 +45,22 @@ _supported_os Linux
|
||||
|
||||
_require_scratch
|
||||
|
||||
# This needs to mount ext3; might require ext3 driver, or ext4
|
||||
# might handle it itself. Find out if we have it one way or another.
|
||||
modprobe ext3 > /dev/null 2>&1
|
||||
grep -q ext3 /proc/filesystems || _notrun "This test requires ext3 support"
|
||||
|
||||
rm -f $seqres.full
|
||||
|
||||
# Make a small ext3 fs, (extents disabled) & mount it
|
||||
yes | mkfs.ext3 $SCRATCH_DEV 512m >> $seqres.full 2>&1
|
||||
_scratch_mount -t ext3 || _fail "couldn't mount fs as ext3"
|
||||
# Make a small ext4 fs with extents disabled & mount it
|
||||
yes | mkfs.ext4 -O ^extents $SCRATCH_DEV 512m >> $seqres.full 2>&1
|
||||
_scratch_mount || _fail "couldn't mount fs"
|
||||
|
||||
# Create a small non-extent-based file
|
||||
echo "Create 1m testfile1"
|
||||
$XFS_IO_PROG -f $SCRATCH_MNT/testfile1 -c "pwrite 0 1m" | _filter_xfs_io
|
||||
echo "Create testfile2 to fill the fs"
|
||||
# A large non-extent-based file filling the fs; this will run out & fail
|
||||
$XFS_IO_PROG -f $SCRATCH_MNT/testfile2 -c "pwrite 0 512m" | _filter_xfs_io
|
||||
|
||||
# Remount as ext4
|
||||
_scratch_unmount
|
||||
_scratch_mount -t ext4 || _fail "couldn't remount fs as ext4"
|
||||
# Create a large non-extent-based file filling the fs; this will run out & fail
|
||||
echo "Create testfile2 to fill the fs"
|
||||
$XFS_IO_PROG -f $SCRATCH_MNT/testfile2 -c "pwrite 0 512m" | _filter_xfs_io
|
||||
df -h $SCRATCH_MNT >> $seqres.full
|
||||
|
||||
# Grow it by 512m
|
||||
# Grow fs by 512m
|
||||
echo "Resize to 1g"
|
||||
resize2fs $SCRATCH_DEV 1g >> $seqres.full 2>&1 || _fail "Could not resize to 1g"
|
||||
df -h $SCRATCH_MNT >> $seqres.full
|
||||
|
||||
Reference in New Issue
Block a user