From 0e13e40b247a1cc1039a37a0eebc26243ae8695e Mon Sep 17 00:00:00 2001 From: Xiao Yang Date: Mon, 13 Feb 2017 19:21:50 +0800 Subject: [PATCH] shared/005,7: make sure debugfs sets negative i_size shared/005 and shared/007 work abnornamlly on RHEL6.8GA and RHEL6.9Beta because debugfs fails to set i_size to -1 or -512 and reports "exceeds field size maximum". When debugfs fails to set a negative i_size, we can skip these cases which don't trigger the kernel bug. Signed-off-by: Xiao Yang Reviewed-by: Eryu Guan Signed-off-by: Eryu Guan --- tests/shared/005 | 7 +++++++ tests/shared/007 | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/tests/shared/005 b/tests/shared/005 index 296de178..76c551c1 100755 --- a/tests/shared/005 +++ b/tests/shared/005 @@ -67,6 +67,13 @@ $DEBUGFS_PROG -w -R "sif /a size -1" $SCRATCH_DEV >> $seqres.full 2>&1 echo "Remount, try to append" _scratch_mount + +# check whether debugfs succeeds to set i_size to -1 or not +i_size=$(stat -c "%s" $testdir/a) +if [ $i_size -ne -1 ]; then + _notrun "Could not set i_size to -1 successfully, skip test." +fi + dd if=/dev/zero of=$testdir/a bs=512 count=1 oflag=append conv=notrunc >> $seqres.full 2>&1 || echo "Write did not succeed (ok)." sync diff --git a/tests/shared/007 b/tests/shared/007 index 0729ab85..77636f40 100755 --- a/tests/shared/007 +++ b/tests/shared/007 @@ -69,6 +69,13 @@ $DEBUGFS_PROG -w -R "sif /a size 0xFFFFFFFFFFFFFE00" $SCRATCH_DEV >> $seqres.ful echo "Remount, try to append" _scratch_mount + +# check whether debugfs succeeds to set i_size to -512 or not +i_size=$(stat -c "%s" $testdir/a) +if [ $i_size -ne -512 ]; then + _notrun "Could not set i_size to -512 successfully, skip test." +fi + dd if=/dev/zero of=$testdir/a bs=512 count=1 oflag=direct,append conv=notrunc >> $seqres.full 2>&1 || echo "Write did not succeed (ok)." sync -- 2.30.2