In some configurations (e.g. 1 KB block size), ext4 can decide it is
better to zero out several blocks rather than splitting unwritten
extent. This changes results SEEK_HOLE / SEEK_DATA returns and thus the
test fails. Fix the problem by disabling the feature for this test.
Signed-off-by: Jan Kara <jack@xxxxxxx>
---
tests/generic/285 | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/tests/generic/285 b/tests/generic/285
index b700a15..8078b1c 100755
--- a/tests/generic/285
+++ b/tests/generic/285
@@ -46,6 +46,12 @@ BASE_TEST_FILE=$TEST_DIR/seek_sanity_testfile
[ -x $here/src/seek_sanity_test ] || _notrun "seek_sanitfy_tester not built"
+# Disable extent zeroing for ext4 as that change where holes are created
+if [ "$FSTYP" = "ext4" ]; then
+ DEV=`basename $TEST_DEV`
+ echo 0 >/sys/fs/ext4/$DEV/extent_max_zeroout_kb
+fi
+
_cleanup()
{
eval "rm -f $BASE_TEST_FILE.*"
--
1.8.1.4
|