Spdk/test/nvmf/target/abort_qd_sizes.sh
Michal Berger 11d13b85e6 test/nvmf: Test different abort qd sizes under SPDK and kernel targets
Signed-off-by: Michal Berger <michalx.berger@intel.com>
Change-Id: I79ede7670477ed0d8eb38fa3eced4a9b70c64620
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/8962
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
2022-09-19 13:13:42 +00:00

80 lines
1.7 KiB
Bash
Executable File

#!/usr/bin/env bash
testdir=$(readlink -f "$(dirname "$0")")
rootdir=$(readlink -f "$testdir/../../../")
# Set defaults we want to work with
set -- "--transport=tcp" "--iso" "$@"
source "$rootdir/test/common/autotest_common.sh"
source "$rootdir/test/nvmf/common.sh"
shopt -s nullglob
rabort() {
local trtype=$1
local adrfam=$2
local traddr=$3
local trsvcid=$4
local subnqn=$5
local qds qd
local target r
qds=(4 24 64)
for r in trtype adrfam traddr trsvcid subnqn; do
target=${target:+$target }$r:${!r}
done
for qd in "${qds[@]}"; do
"$SPDK_EXAMPLE_DIR/abort" \
-q "$qd" \
-w rw \
-M 50 \
-o 4096 \
-r "$target"
done
}
spdk_target() {
local name=spdk_target
local subnqn=nqn.2016-06.io.spdk:$name
rpc_cmd bdev_nvme_attach_controller -t pcie -a "$nvme" -b "$name"
rpc_cmd nvmf_create_transport $NVMF_TRANSPORT_OPTS -u 8192
rpc_cmd nvmf_create_subsystem "$subnqn" -a -s "$NVMF_SERIAL"
rpc_cmd nvmf_subsystem_add_ns "$subnqn" "${name}n1"
rpc_cmd nvmf_subsystem_add_listener "$subnqn" -t "$TEST_TRANSPORT" -a "$NVMF_FIRST_TARGET_IP" -s "$NVMF_PORT"
rabort "$TEST_TRANSPORT" IPv4 "$NVMF_FIRST_TARGET_IP" "$NVMF_PORT" "$subnqn"
rpc_cmd nvmf_delete_subsystem "$subnqn"
rpc_cmd bdev_nvme_detach_controller "$name"
}
kernel_target() {
local name=kernel_target
configure_kernel_target "$name"
rabort "$TEST_TRANSPORT" IPv4 "$NVMF_INITIATOR_IP" "$NVMF_PORT" "$name"
clean_kernel_target
}
nvmftestinit
nvmfappstart -m 0xf
trap 'process_shm --id $NVMF_APP_SHM_ID || :; nvmftestfini || :; clean_kernel_target' SIGINT SIGTERM EXIT
mapfile -t nvmes < <(nvme_in_userspace)
((${#nvmes[@]} > 0))
nvme=${nvmes[0]}
run_test "spdk_target_abort" spdk_target
run_test "kernel_target_abort" kernel_target
trap - SIGINT SIGTERM EXIT
nvmftestfini