[PATCH V2 1/3] dax/dm: disable testing on devices that don't support dax

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



Move the check for dax from the individual target scripts into
_require_dm_target.  This fixes up a couple of missed tests that are
failing due to the lack of dax support (such as tests requiring
dm-snapshot).

Signed-off-by: Jeff Moyer <jmoyer@xxxxxxxxxx>
---
 common/dmdelay  |  5 -----
 common/dmerror  |  5 -----
 common/dmflakey |  5 -----
 common/dmthin   |  5 -----
 common/rc       | 11 +++++++++++
 5 files changed, 11 insertions(+), 20 deletions(-)

diff --git a/common/dmdelay b/common/dmdelay
index f1e725b9..66cac1a7 100644
--- a/common/dmdelay
+++ b/common/dmdelay
@@ -7,11 +7,6 @@
 DELAY_NONE=0
 DELAY_READ=1
 
-echo $MOUNT_OPTIONS | grep -q dax
-if [ $? -eq 0 ]; then
-	_notrun "Cannot run tests with DAX on dmdelay devices"
-fi
-
 _init_delay()
 {
 	local BLK_DEV_SIZE=`blockdev --getsz $SCRATCH_DEV`
diff --git a/common/dmerror b/common/dmerror
index 426f1e96..7d12e0a1 100644
--- a/common/dmerror
+++ b/common/dmerror
@@ -4,11 +4,6 @@
 #
 # common functions for setting up and tearing down a dmerror device
 
-echo $MOUNT_OPTIONS | grep -q dax
-if [ $? -eq 0 ]; then
-	_notrun "Cannot run tests with DAX on dmerror devices"
-fi
-
 _dmerror_setup()
 {
 	local dm_backing_dev=$SCRATCH_DEV
diff --git a/common/dmflakey b/common/dmflakey
index 2af3924d..b4e11ae9 100644
--- a/common/dmflakey
+++ b/common/dmflakey
@@ -8,11 +8,6 @@ FLAKEY_ALLOW_WRITES=0
 FLAKEY_DROP_WRITES=1
 FLAKEY_ERROR_WRITES=2
 
-echo $MOUNT_OPTIONS | grep -q dax
-if [ $? -eq 0 ]; then
-	_notrun "Cannot run tests with DAX on dmflakey devices"
-fi
-
 _init_flakey()
 {
 	local BLK_DEV_SIZE=`blockdev --getsz $SCRATCH_DEV`
diff --git a/common/dmthin b/common/dmthin
index 7946e9a7..61dd6f89 100644
--- a/common/dmthin
+++ b/common/dmthin
@@ -21,11 +21,6 @@ DMTHIN_POOL_DEV="/dev/mapper/$DMTHIN_POOL_NAME"
 DMTHIN_VOL_NAME="thin-vol"
 DMTHIN_VOL_DEV="/dev/mapper/$DMTHIN_VOL_NAME"
 
-echo $MOUNT_OPTIONS | grep -q dax
-if [ $? -eq 0 ]; then
-	_notrun "Cannot run tests with DAX on dmthin devices"
-fi
-
 _dmthin_cleanup()
 {
 	$UMOUNT_PROG $SCRATCH_MNT > /dev/null 2>&1
diff --git a/common/rc b/common/rc
index eeac1355..65cde32b 100644
--- a/common/rc
+++ b/common/rc
@@ -1874,6 +1874,17 @@ _require_dm_target()
 	_require_sane_bdev_flush $SCRATCH_DEV
 	_require_command "$DMSETUP_PROG" dmsetup
 
+	echo $MOUNT_OPTIONS | grep -q dax
+	if [ $? -eq 0 ]; then
+		case $target in
+		stripe|linear|log-writes)
+			;;
+		*)
+			_notrun "Cannot run tests with DAX on $target devices."
+			;;
+		esac
+	fi
+
 	modprobe dm-$target >/dev/null 2>&1
 
 	$DMSETUP_PROG targets 2>&1 | grep -q ^$target
-- 
2.19.1




[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