numam-spdk/test/vhost/initiator/json_config.sh
Pawel Wodkowski fdd6dbc902 vhost: add socket path in info dump
This also save CWD on init so socket path is no longer relative.

Change-Id: I303401fe0340f0bc2ea5e4ba468361f68ea84c3d
Signed-off-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
Reviewed-on: https://review.gerrithub.io/419067
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Reviewed-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-by: Pawel Kaminski <pawelx.kaminski@intel.com>
Reviewed-by: Paweł Niedźwiecki <pawelx.niedzwiecki@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
2018-07-12 23:54:34 +00:00

65 lines
2.0 KiB
Bash
Executable File

#!/usr/bin/env bash
set -ex
INITIATOR_JSON_DIR=$(readlink -f $(dirname $0))
. $INITIATOR_JSON_DIR/../../json_config/common.sh
# Load spdk_tgt with controllers used by virtio initiator
# Test also virtio_pci bdevs
function construct_vhost_devices() {
$rpc_py construct_split_vbdev Nvme0n1 4
$rpc_py construct_vhost_scsi_controller naa.Nvme0n1p0.0
$rpc_py construct_vhost_scsi_controller naa.Nvme0n1p1.1
$rpc_py add_vhost_scsi_lun naa.Nvme0n1p0.0 0 Nvme0n1p0
$rpc_py add_vhost_scsi_lun naa.Nvme0n1p1.1 0 Nvme0n1p1
$rpc_py construct_vhost_blk_controller naa.Nvme0n1p2.0 Nvme0n1p2
$rpc_py construct_vhost_blk_controller naa.Nvme0n1p3.1 Nvme0n1p3
pci_scsi=$(lspci -nn -D | grep '1af4:1004' | head -1 | awk '{print $1;}')
pci_blk=$(lspci -nn -D | grep '1af4:1001' | head -1 | awk '{print $1;}')
if [ ! -z $pci_scsi ]; then
$rpc_py construct_virtio_dev -t pci -a $pci_scsi -d scsi Virtio0
fi
if [ ! -z $pci_blk ]; then
$rpc_py construct_virtio_dev -t pci -a $pci_blk -d blk Virtio1
fi
}
# Load virtio initiator with bdevs
function connect_to_vhost_devices_from_initiator() {
$rpc_py construct_virtio_dev -t user -a naa.Nvme0n1p0.0 -d scsi Nvme0n1p0
$rpc_py construct_virtio_dev -t user -a naa.Nvme0n1p2.0 -d blk Nvme0n1p2
}
function disconnect_and_clear_vhost_devices() {
$clear_config_py clear_config
}
function test_subsystems() {
run_spdk_tgt
rootdir=$(readlink -f $INITIATOR_JSON_DIR/../../..)
rpc_py="$spdk_rpc_py"
clear_config_py="$spdk_clear_config_py"
load_nvme
construct_vhost_devices
test_json_config
run_initiator
rpc_py="$initiator_rpc_py"
clear_config_py="$initiator_clear_config_py"
$rpc_py start_subsystem_init
connect_to_vhost_devices_from_initiator
test_json_config
disconnect_and_clear_vhost_devices
test_global_params "virtio_initiator"
clear_config_py="$spdk_clear_config_py"
$clear_config_py clear_config
kill_targets
}
trap 'on_error_exit "${FUNCNAME}" "${LINENO}"' ERR
timing_enter json_config_virtio_initiator
test_subsystems
timing_exit json_config_virtio_initiator
report_test_completion json_config_virtio_initiator