]> git.proxmox.com Git - ceph.git/blob - ceph/src/spdk/test/nvmf/target/connect_disconnect.sh
import 15.2.0 Octopus source
[ceph.git] / ceph / src / spdk / test / nvmf / target / connect_disconnect.sh
1 #!/usr/bin/env bash
2
3 testdir=$(readlink -f $(dirname $0))
4 rootdir=$(readlink -f $testdir/../../..)
5 source $rootdir/test/common/autotest_common.sh
6 source $rootdir/test/nvmf/common.sh
7
8 MALLOC_BDEV_SIZE=64
9 MALLOC_BLOCK_SIZE=512
10
11 rpc_py="$rootdir/scripts/rpc.py"
12
13 set -e
14
15 # connect disconnect is geared towards ensuring that we are properly freeing resources after disconnecting qpairs.
16 timing_enter connect_disconnect
17
18 nvmftestinit
19 nvmfappstart "-m 0xF"
20
21 $rpc_py nvmf_create_transport -t $TEST_TRANSPORT -u 8192 -c 0
22
23 bdev="$($rpc_py construct_malloc_bdev $MALLOC_BDEV_SIZE $MALLOC_BLOCK_SIZE)"
24
25 $rpc_py nvmf_subsystem_create nqn.2016-06.io.spdk:cnode1 -a -s SPDK00000000000001
26 $rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 $bdev
27 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
28
29 if [ $RUN_NIGHTLY -eq 1 ]; then
30 num_iterations=200
31 else
32 num_iterations=10
33 fi
34
35 set +x
36 for i in $(seq 1 $num_iterations); do
37 nvme connect -t $TEST_TRANSPORT -n "nqn.2016-06.io.spdk:cnode1" -a "$NVMF_FIRST_TARGET_IP" -s "$NVMF_PORT"
38 waitforblk "nvme0n1"
39 nvme disconnect -n "nqn.2016-06.io.spdk:cnode1"
40 waitforblk_disconnect "nvme0n1"
41 done
42 set -x
43
44 trap - SIGINT SIGTERM EXIT
45
46 nvmfcleanup
47 nvmftestfini
48 timing_exit connect_disconnect