[PATCH v3 2/2] common/rc: Update _exclude_scratch_mount_option() and _require_dm_target() for new dax option

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



Some tests(e.g. ext4/035) cannot include dax option(dax=inode/dax=never
is OK) so make _exclude_scratch_mount_option() and _require_dm_target()
check if old dax or new dax=always option is not defined in $MOUNT_OPTIONS.

Signed-off-by: Xiao Yang <yangx.jy@xxxxxxxxxxxxxx>
Reviewed-by: Ira Weiny <ira.weiny@xxxxxxxxx>
---

V2->V3:
Update comments and set pattern variable in while().

 common/rc | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/common/rc b/common/rc
index 062eb6ba..aa5a7409 100644
--- a/common/rc
+++ b/common/rc
@@ -1896,7 +1896,7 @@ _require_dm_target()
 	_require_sane_bdev_flush $SCRATCH_DEV
 	_require_command "$DMSETUP_PROG" dmsetup
 
-	echo $MOUNT_OPTIONS | grep -q dax
+	_normalize_mount_options | egrep -q "dax(=always| |$)"
 	if [ $? -eq 0 ]; then
 		case $target in
 		stripe|linear|log-writes)
@@ -3483,12 +3483,16 @@ _normalize_mount_options()
 }
 
 # skip test if MOUNT_OPTIONS contains the given strings
+# Both dax and dax=always are excluded if dax or dax=always is passed
 _exclude_scratch_mount_option()
 {
 	local mnt_opts=$(_normalize_mount_options)
 
 	while [ $# -gt 0 ]; do
-		if echo $mnt_opts | grep -qw "$1"; then
+		local pattern=$1
+		echo "$pattern" | egrep -q "dax(=always|$)" && \
+			pattern="dax(=always| |$)"
+		if echo $mnt_opts | egrep -q "$pattern"; then
 			_notrun "mount option \"$1\" not allowed in this test"
 		fi
 		shift
-- 
2.21.0






[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux