generic/420: truncate testfile before executing the test

If generic/437 is run before generic/420, the latter fails with:

  4c4
  < stat.size = 2048
  ---
  > stat.size = 2097152

because both use $TEST_DIR/testfile.  generic/437 leaves it at 2M,
while generic/420 assumes that it is empty (or at least smaller than
2048 bytes).

Use a private test file (testfile.$seq) and truncate it on open just in
case.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Eryu Guan <eguan@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
This commit is contained in:
Ilya Dryomov
2017-08-25 14:04:41 +02:00
committed by Eryu Guan
parent a0c87b8074
commit af04d7247f
+2 -2
View File
@@ -52,10 +52,10 @@ _supported_os Linux
_require_test
_require_xfs_io_command fpunch
testfile="${TEST_DIR}/testfile"
testfile="${TEST_DIR}/testfile.$seq"
echo "Testing fallocate(mode=FALLOC_FL_KEEP_SIZE|FALLOC_FL_PUNCH_HOLE)"
$XFS_IO_PROG -fc "pwrite -b 2048 0 2048" $testfile | head -n1
$XFS_IO_PROG -f -t -c "pwrite -b 2048 0 2048" $testfile | head -n1
# fpunch from xfs_io has KEEP_SIZE flag set
$XFS_IO_PROG -c "fpunch 2048 2048" $testfile
$XFS_IO_PROG -c "stat" $testfile | grep -F 'stat.size'