test/virtio: Add vhost initiator tests for multitarget.

test virtio devices created from scsi controller with multiple targets

Change-Id: Ibef135c4dc6fdb324bec6b42c9e532add92e656a
Signed-off-by: Pawel Niedzwiecki <pawelx.niedzwiecki@intel.com>
Reviewed-on: https://review.gerrithub.io/391836
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
This commit is contained in:
Pawel Niedzwiecki 2017-12-14 21:00:13 +01:00 committed by Jim Harris
parent 8d57f4da2a
commit 37fd86f0f7
2 changed files with 20 additions and 3 deletions

View File

@ -9,6 +9,8 @@ PLUGIN_DIR=$ROOT_DIR/examples/bdev/fio_plugin
RPC_PY="$ROOT_DIR/scripts/rpc.py"
FIO_BIN="/usr/src/fio/fio"
BDEV_FIO="$BASE_DIR/bdev.fio"
virtio_bdevs=""
virtio_nvme_bdevs=""
function usage()
{
@ -56,12 +58,19 @@ function run_spdk_fio() {
function create_bdev_config()
{
local vbdevs
if [ -z "$($RPC_PY get_bdevs | jq '.[] | select(.name=="Nvme0n1")')" ]; then
error "Nvme0n1 bdev not found!"
fi
$RPC_PY construct_vhost_scsi_controller naa.Nvme0n1.0
$RPC_PY add_vhost_scsi_lun naa.Nvme0n1.0 0 Nvme0n1
$RPC_PY add_vhost_scsi_lun naa.Nvme0n1.0 0 Nvme0n1p0
$RPC_PY add_vhost_scsi_lun naa.Nvme0n1.0 1 Nvme0n1p1
$RPC_PY add_vhost_scsi_lun naa.Nvme0n1.0 2 Nvme0n1p2
$RPC_PY add_vhost_scsi_lun naa.Nvme0n1.0 3 Nvme0n1p3
$RPC_PY add_vhost_scsi_lun naa.Nvme0n1.0 4 Nvme0n1p4
$RPC_PY add_vhost_scsi_lun naa.Nvme0n1.0 5 Nvme0n1p5
$RPC_PY construct_malloc_bdev 128 512 --name Malloc0
$RPC_PY construct_vhost_scsi_controller naa.Malloc0.1
@ -70,6 +79,11 @@ function create_bdev_config()
$RPC_PY construct_malloc_bdev 128 4096 --name Malloc1
$RPC_PY construct_vhost_scsi_controller naa.Malloc1.2
$RPC_PY add_vhost_scsi_lun naa.Malloc1.2 0 Malloc1
vbdevs=$(discover_bdevs $ROOT_DIR $BASE_DIR/bdev.conf)
virtio_bdevs=$(jq -r '[.[].name] | join(":")' <<< $vbdevs)
virtio_nvme_bdevs=$(jq -r '[.[] |
select(.driver_specific.virtio.socket=="naa.Nvme0n1.0").name] | join(":")' <<< $vbdevs)
}
timing_enter spdk_vhost_run
@ -81,12 +95,12 @@ create_bdev_config
timing_exit create_bdev_config
timing_enter run_spdk_fio
run_spdk_fio $BDEV_FIO --filename=VirtioScsi0t0:VirtioScsi1t0:VirtioScsi2t0 \
run_spdk_fio $BDEV_FIO --filename=$virtio_bdevs\
--io_size=400m --size=100m --spdk_conf=$BASE_DIR/bdev.conf
timing_exit run_spdk_fio
timing_enter run_spdk_fio_4G
run_spdk_fio $BDEV_FIO --filename=VirtioScsi0t0 \
run_spdk_fio $BDEV_FIO --filename=$virtio_nvme_bdevs\
--io_size=4G --size=1G --offset=4G --spdk_conf=$BASE_DIR/bdev.conf
timing_exit run_spdk_fio_4G

View File

@ -1,2 +1,5 @@
[Ioat]
Disable Yes
[Split]
Split Nvme0n1 6