Kernel commit
6a23e05c2fe3 ("dm: remove legacy request-based IO path")
retained dm-mq but removed the legacy dm code. Skip those tests that
require the legacy dm code.
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
#
# Functions and global variables used by both the srp and nvmeof-mp tests.
+. common/shellcheck
+
debug=
filesystem_type=ext4
fio_aux_path=/tmp/fio-state-files
ramdisk_size=$max_ramdisk_size
fi
+_have_legacy_dm() {
+ if ! _have_kernel_option DM_MQ_DEFAULT; then
+ SKIP_REASON="legacy device mapper support is missing"
+ return 1
+ fi
+}
+
get_ipv4_addr() {
ip -4 -o addr show dev "$1" |
sed -n 's/.*[[:blank:]]inet[[:blank:]]*\([^[:blank:]/]*\).*/\1/p'
DESCRIPTION="File I/O on top of multipath concurrently with logout and login (sq-on-mq)"
TIMED=1
+requires() {
+ _have_legacy_dm
+}
+
test_disconnect_repeatedly() {
local dev fio_status m
DESCRIPTION="File I/O on top of multipath concurrently with logout and login (sq)"
TIMED=1
+requires() {
+ _have_legacy_dm
+}
+
test_disconnect_repeatedly() {
local dev fio_status m
DESCRIPTION="File I/O on top of multipath concurrently with logout and login (sq-on-mq)"
TIMED=1
+requires() {
+ _have_legacy_dm
+}
+
test_disconnect_repeatedly() {
local dev fio_status m
modprobe "$(basename "$m")" >&/dev/null
done
for mq in y n; do
+ [ $mq = n ] && ! _have_legacy_dm && continue
use_blk_mq ${mq} ${mq} || return $?
dev=$(get_bdev 0) || return $?
for sched in noop deadline bfq cfq; do