From: Zorro Lang Date: Tue, 5 Jul 2016 09:30:23 +0000 (+0800) Subject: common/dmerror: fix nonsensical arguments handling X-Git-Tag: v2022.05.01~2450 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=4cd659be9cbc28fa5b62c35c22c4a491b301afeb;p=xfstests-dev.git common/dmerror: fix nonsensical arguments handling By default, _dmerror_load_*_table() suspends the dm device with "--nolockfs" option. Callers have to feed two arguments to these functions to change the behavior, with the second being 1, but the first argument is not used at all, which doesn't make sense. Fix it by checking if the first argument is "lockfs" and removing "--nolockfs" option if so, or passing all options to dmsetup. Signed-off-by: Zorro Lang Reviewed-by: Eryu Guan Signed-off-by: Eryu Guan --- diff --git a/common/dmerror b/common/dmerror index 6df87bd0..5ad99943 100644 --- a/common/dmerror +++ b/common/dmerror @@ -68,7 +68,12 @@ _dmerror_cleanup() _dmerror_load_error_table() { suspend_opt="--nolockfs" - [ $# -gt 1 ] && [ $2 -eq 1 ] && suspend_opt="" + + if [ "$1" = "lockfs" ]; then + suspend_opt="" + elif [ -n "$*" ]; then + suspend_opt="$*" + fi $DMSETUP_PROG suspend $suspend_opt error-test [ $? -ne 0 ] && _fail "dmsetup suspend failed" @@ -83,7 +88,12 @@ _dmerror_load_error_table() _dmerror_load_working_table() { suspend_opt="--nolockfs" - [ $# -gt 1 ] && [ $2 -eq 1 ] && suspend_opt="" + + if [ "$1" = "lockfs" ]; then + suspend_opt="" + elif [ -n "$*" ]; then + suspend_opt="$*" + fi $DMSETUP_PROG suspend $suspend_opt error-test [ $? -ne 0 ] && _fail "dmsetup suspend failed"