]> git.proxmox.com Git - ceph.git/blob - ceph/src/spdk/test/nvmf/target/bdev_io_wait.sh
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / spdk / test / nvmf / target / bdev_io_wait.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 nvmftestinit
14 nvmfappstart -m 0xF --wait-for-rpc
15
16 # Minimal number of bdev io pool (5) and cache (1)
17 $rpc_py bdev_set_options -p 5 -c 1
18 $rpc_py framework_start_init
19 $rpc_py nvmf_create_transport $NVMF_TRANSPORT_OPTS -u 8192
20
21 $rpc_py bdev_malloc_create $MALLOC_BDEV_SIZE $MALLOC_BLOCK_SIZE -b Malloc0
22 $rpc_py nvmf_create_subsystem nqn.2016-06.io.spdk:cnode1 -a -s SPDK00000000000001
23 $rpc_py nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 Malloc0
24 $rpc_py nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
25
26 "$rootdir/test/bdev/bdevperf/bdevperf" -m 0x10 -i 1 --json <(gen_nvmf_target_json) -q 128 -o 4096 -w write -t 1 &
27 WRITE_PID=$!
28 "$rootdir/test/bdev/bdevperf/bdevperf" -m 0x20 -i 2 --json <(gen_nvmf_target_json) -q 128 -o 4096 -w read -t 1 &
29 READ_PID=$!
30 "$rootdir/test/bdev/bdevperf/bdevperf" -m 0x40 -i 3 --json <(gen_nvmf_target_json) -q 128 -o 4096 -w flush -t 1 &
31 FLUSH_PID=$!
32 "$rootdir/test/bdev/bdevperf/bdevperf" -m 0x80 -i 4 --json <(gen_nvmf_target_json) -q 128 -o 4096 -w unmap -t 1 &
33 UNMAP_PID=$!
34 sync
35
36 wait $WRITE_PID
37 wait $READ_PID
38 wait $FLUSH_PID
39 wait $UNMAP_PID
40
41 $rpc_py nvmf_delete_subsystem nqn.2016-06.io.spdk:cnode1
42
43 trap - SIGINT SIGTERM EXIT
44
45 nvmftestfini