Add new fsck return code to zvol_misc_002_pos

zvol_misc_002_pos was failing on Fedora 26 because its newer version
of fsck was returning a different code than previous versions.  The
new fsck error code is valid and is been added to the test in this
patch.

Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Reviewed-by: George Melikov <mail@gmelikov.ru>
Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Signed-off-by: Tony Hutter <hutter2@llnl.gov>
Closes #6350
This commit is contained in:
Tony Hutter 2017-07-24 10:58:14 -07:00 committed by Brian Behlendorf
parent 829f9251cf
commit c89a02a26a
1 changed files with 18 additions and 4 deletions

View File

@ -91,10 +91,8 @@ while (( 1 )); do
done
if is_linux; then
EXIT_STATUS=4
log_must sync
else
EXIT_STATUS=39
log_must lockfs -f $TESTDIR
fi
@ -104,8 +102,24 @@ block_device_wait
fsck -n ${ZVOL_RDEVDIR}/$TESTPOOL/$TESTVOL@snap >/dev/null 2>&1
retval=$?
if [[ $retval -ne 0 && $retval -ne $EXIT_STATUS ]]; then
log_fail "fsck exited with wrong value $retval "
if [ $retval -ne 0 ] ; then
if is_linux ; then
# Linux's fsck returns a different code for this test depending
# on the version:
#
# e2fsprogs-1.43.3 (Fedora 25 and older): returns 4
# e2fsprogs-1.43.4 (Fedora 26): returns 8
#
# https://github.com/zfsonlinux/zfs/issues/6297
if [ $retval -ne 4 -a $retval -ne 8 ] ; then
log_fail "fsck exited with wrong value $retval"
fi
else
if [ $retval -ne 39 ] ; then
log_fail "fsck exited with wrong value $retval"
fi
fi
fi
log_pass "Verify that ZFS volume snapshot could be fscked"