[PATCH] generic/273: Remove hard coded block size

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



The space occupied by files in the 'origin' directory is calculated with
the assumption that 4k is the block size of the underlying filesystem.
This causes the test to fail with ENOSPC errors when running on
filesystems with larger block sizes. To fix the issue, this commit makes
use of the the block size obtained from the mounted filesystem.

Signed-off-by: Chandan Rajendra <chandan@xxxxxxxxxxxxxxxxxx>
---
 tests/generic/273 | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/tests/generic/273 b/tests/generic/273
index 0a4a600..d90212e 100755
--- a/tests/generic/273
+++ b/tests/generic/273
@@ -57,6 +57,7 @@ _threads_set()
 
 _file_create()
 {
+	block_size=$1
 	_i=0
 
 	if ! mkdir $SCRATCH_MNT/origin
@@ -70,11 +71,11 @@ _file_create()
 
 	_disksize=`$DF_PROG -B 1 $SCRATCH_MNT | tail -1 | $AWK_PROG '{ print $5 }'`
 	_disksize=$(($_disksize / 3))
-	_num=$(($_disksize / $count / $threads / 4096))
+	_num=$(($_disksize / $count / $threads / $block_size))
 	_count=$count
 	while [ $_i -lt $_num ]
 	do
-		dd if=/dev/zero of=file_$_i bs=4096 count=$_count >/dev/null 2>&1
+		dd if=/dev/zero of=file_$_i bs=$block_size count=$_count >/dev/null 2>&1
 		_i=$(($_i + 1))
 	done
 
@@ -105,9 +106,10 @@ _do_workload()
 {
 	_pids=""
 	_pid=1
+	block_size=$(get_block_size $SCRATCH_MNT)
 	
 	_threads_set
-	_file_create
+	_file_create $block_size
 
 	_threads=$threads
 
-- 
2.1.0

--
To unsubscribe from this list: send the line "unsubscribe fstests" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[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