From: Darrick J. Wong <djwong@xxxxxxxxxx> In commit fc7b3903, we tried to make _require_dm_target smart enough to _notrun tests that require a device mapper target that isn't compatible with "DAX". However, as of this writing, the incompatibility stems from device mapper's unwillingness to switch access modes when running atop DAX (persistent memory) devices, and has nothing to do with the filesystem mount options. Since filesystems supporting DAX don't universally require "dax" in the mount options to enable that functionality, switch the test to query sysfs to see if the scratch device supports DAX. Fixes: fc7b3903 ("dax/dm: disable testing on devices that don't support dax") Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> --- common/rc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/rc b/common/rc index 7254130f..10e5f40b 100644 --- a/common/rc +++ b/common/rc @@ -1889,7 +1889,8 @@ _require_dm_target() _require_sane_bdev_flush $SCRATCH_DEV _require_command "$DMSETUP_PROG" dmsetup - _normalize_mount_options | egrep -q "dax(=always| |$)" + _normalize_mount_options | egrep -q "dax(=always| |$)" || \ + test -e "/sys/block/$(_short_dev $SCRATCH_DEV)/dax" if [ $? -eq 0 ]; then case $target in stripe|linear|log-writes)