From 8175aa1feaefd2a445e824589ae91930b7e5b63f Mon Sep 17 00:00:00 2001 From: Wojciech Malikowski Date: Wed, 19 Feb 2020 09:48:07 -0500 Subject: [PATCH] lib/ftl: Use fio_plugin for ftl tests Use fio with fio_plugin instead nbd. Change-Id: Ibd94f9de65296814c4bbe45c67f9b47a717c79ac Signed-off-by: Wojciech Malikowski Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/958 Reviewed-by: Maciej Szczepaniak Reviewed-by: Shuhei Matsumoto Reviewed-by: Tomasz Zawadzki Tested-by: SPDK CI Jenkins --- test/ftl/config/fio/drive-prep.fio | 3 ++- test/ftl/config/fio/randr.fio | 3 ++- test/ftl/config/fio/randrw.fio | 3 ++- test/ftl/config/fio/randw-verify-depth128.fio | 3 ++- test/ftl/config/fio/randw-verify-j2.fio | 3 ++- test/ftl/config/fio/randw-verify-qd128-ext.fio | 3 ++- test/ftl/config/fio/randw-verify.fio | 3 ++- test/ftl/config/fio/randw.fio | 3 ++- test/ftl/fio.sh | 18 ++++++++++++------ 9 files changed, 28 insertions(+), 14 deletions(-) diff --git a/test/ftl/config/fio/drive-prep.fio b/test/ftl/config/fio/drive-prep.fio index 1a439f9420..430172ca9c 100644 --- a/test/ftl/config/fio/drive-prep.fio +++ b/test/ftl/config/fio/drive-prep.fio @@ -1,5 +1,6 @@ [drive_prep] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} thread=1 diff --git a/test/ftl/config/fio/randr.fio b/test/ftl/config/fio/randr.fio index 5c431d1b1c..f3f6444760 100644 --- a/test/ftl/config/fio/randr.fio +++ b/test/ftl/config/fio/randr.fio @@ -1,5 +1,6 @@ [global] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} direct=1 thread=1 diff --git a/test/ftl/config/fio/randrw.fio b/test/ftl/config/fio/randrw.fio index 29d06fcc90..fdce9a4775 100644 --- a/test/ftl/config/fio/randrw.fio +++ b/test/ftl/config/fio/randrw.fio @@ -1,5 +1,6 @@ [global] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} direct=1 thread=1 diff --git a/test/ftl/config/fio/randw-verify-depth128.fio b/test/ftl/config/fio/randw-verify-depth128.fio index d6db656a0d..9adee6cab4 100644 --- a/test/ftl/config/fio/randw-verify-depth128.fio +++ b/test/ftl/config/fio/randw-verify-depth128.fio @@ -1,5 +1,6 @@ [global] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} thread=1 direct=1 diff --git a/test/ftl/config/fio/randw-verify-j2.fio b/test/ftl/config/fio/randw-verify-j2.fio index a963629c26..4610efa3f7 100644 --- a/test/ftl/config/fio/randw-verify-j2.fio +++ b/test/ftl/config/fio/randw-verify-j2.fio @@ -1,5 +1,6 @@ [global] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} thread=1 direct=1 diff --git a/test/ftl/config/fio/randw-verify-qd128-ext.fio b/test/ftl/config/fio/randw-verify-qd128-ext.fio index 9be10ad2b3..f22b1f2ece 100644 --- a/test/ftl/config/fio/randw-verify-qd128-ext.fio +++ b/test/ftl/config/fio/randw-verify-qd128-ext.fio @@ -1,5 +1,6 @@ [global] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} thread=1 direct=1 diff --git a/test/ftl/config/fio/randw-verify.fio b/test/ftl/config/fio/randw-verify.fio index acf05e00d0..edca6c618c 100644 --- a/test/ftl/config/fio/randw-verify.fio +++ b/test/ftl/config/fio/randw-verify.fio @@ -1,5 +1,6 @@ [global] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} thread=1 direct=1 diff --git a/test/ftl/config/fio/randw.fio b/test/ftl/config/fio/randw.fio index 3fedab8472..f5b20b124b 100644 --- a/test/ftl/config/fio/randw.fio +++ b/test/ftl/config/fio/randw.fio @@ -1,5 +1,6 @@ [global] -ioengine=libaio +ioengine=spdk_bdev +spdk_json_conf=${FTL_JSON_CONF} filename=${FTL_BDEV_NAME} direct=1 thread=1 diff --git a/test/ftl/fio.sh b/test/ftl/fio.sh index d7af4c27e1..78684cc393 100755 --- a/test/ftl/fio.sh +++ b/test/ftl/fio.sh @@ -14,10 +14,9 @@ ftl_bdev_conf=$testdir/config/ftl.conf gen_ftl_nvme_conf > $ftl_bdev_conf fio_kill() { - $rpc_py stop_nbd_disk /dev/nbd0 - rmmod nbd || true killprocess $svcpid rm -f $ftl_bdev_conf + rm -f $FTL_JSON_CONF } device=$1 @@ -34,7 +33,8 @@ if [ -z "$tests" ]; then exit 1 fi -export FTL_BDEV_NAME=/dev/nbd0 +export FTL_BDEV_NAME=ftl0 +export FTL_JSON_CONF=$testdir/config/ftl.json trap "fio_kill; exit 1" SIGINT SIGTERM EXIT @@ -50,9 +50,15 @@ else $rpc_py bdev_ftl_create -b ftl0 -d nvme0n1 -u $uuid fi -modprobe nbd -$rpc_py start_nbd_disk ftl0 /dev/nbd0 -waitfornbd nbd0 +waitforbdev ftl0 + +( + echo '{"subsystems": ['; + $rpc_py save_subsystem_config -n bdev + echo ']}' +) > $FTL_JSON_CONF + +killprocess $svcpid for test in ${tests}; do timing_enter $test