[PATCH] generic/361: Require sparse file support and fix mounting the volume.

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



The test case generic/361 fails on multiple filesystem implementations
due to two issues:
	1. A file is created on a 512 MB volume by truncating it to
	   1 GB. For this to work, the filesystem implementation must
	   support sparse files. However, the test case does not check
	   for sparse file support.
	2. A loop device, backed by the 1 GB file, is created, mkfs is
	   run on it and it is mounted. However, the mount command does
	   not specify the filesystem type. This doesn't always work
	   properly, as the kernel may pick the wrong driver if there
	   are multiple implementations for a particular filesystem,
	   or not find a driver at all in some cases.

To fix the behavior of the test case, this commit adds a requirement
for sparse file support to the test case, and explicitly specifies the
filesystem type as $FSTYP when mounting the loop device.

Signed-off-by: Ari Sundholm <ari@xxxxxxxxxx>
---
 tests/generic/361 | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/generic/361 b/tests/generic/361
index 173a1a51..d76d2635 100755
--- a/tests/generic/361
+++ b/tests/generic/361
@@ -30,6 +30,7 @@ _supported_fs generic
 _require_scratch
 _require_block_device $SCRATCH_DEV
 _require_loop
+_require_sparse_files
 
 # create a small filesystem to hold another filesystem image
 _scratch_mkfs_sized $((512 * 1024 * 1024)) >>$seqres.full 2>&1
@@ -44,7 +45,7 @@ mkdir -p $fs_mnt
 # mount loop device and create a larger file to hit I/O errors on loop device
 loop_dev=$(_create_loop_device $fs_img)
 _mkfs_dev $loop_dev
-_mount $loop_dev $fs_mnt
+_mount -t $FSTYP $loop_dev $fs_mnt
 if [ "$FSTYP" = "xfs" ]; then
 	# Turn off all XFS metadata IO error retries
 	dname=$(_short_dev $loop_dev)
-- 
2.25.1




[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux