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
10 RDMA_IP_LIST
=$
(get_available_rdma_ips
)
11 NVMF_FIRST_TARGET_IP
=$
(echo "$RDMA_IP_LIST" |
head -n 1)
12 if [ -z $NVMF_FIRST_TARGET_IP ]; then
13 echo "no NIC for nvmf test"
17 timing_enter identify_kernel_nvmf_tgt
19 subsystemname
=nqn
.2016-06.io.spdk
:testnqn
21 modprobe null_blk nr_devices
=1
27 if [ ! -d /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname ]; then
28 mkdir
/sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname
30 echo 1 > /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/attr_allow_any_host
32 if [ ! -d /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/namespaces
/1 ]; then
33 mkdir
/sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/namespaces
/1
36 echo -n /dev
/nullb0
> /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/namespaces
/1/device_path
37 echo 1 > /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/namespaces
/1/enable
39 if [ ! -d /sys
/kernel
/config
/nvmet
/ports
/1 ]; then
40 mkdir
/sys
/kernel
/config
/nvmet
/ports
/1
43 echo -n rdma
> /sys
/kernel
/config
/nvmet
/ports
/1/addr_trtype
44 echo -n ipv4
> /sys
/kernel
/config
/nvmet
/ports
/1/addr_adrfam
45 echo -n $NVMF_FIRST_TARGET_IP > /sys
/kernel
/config
/nvmet
/ports
/1/addr_traddr
46 echo -n $NVMF_PORT > /sys
/kernel
/config
/nvmet
/ports
/1/addr_trsvcid
48 ln -s /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname /sys
/kernel
/config
/nvmet
/ports
/1/subsystems
/$subsystemname
52 $rootdir/examples
/nvme
/identify
/identify
-r "\
55 traddr:$NVMF_FIRST_TARGET_IP \
57 subnqn:nqn.2014-08.org.nvmexpress.discovery" -t all
58 $rootdir/examples
/nvme
/identify
/identify
-r "\
61 traddr:$NVMF_FIRST_TARGET_IP \
63 subnqn:$subsystemname"
65 rm -rf /sys
/kernel
/config
/nvmet
/ports
/1/subsystems
/$subsystemname
67 echo 0 > /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/namespaces
/1/enable
68 echo -n 0 > /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/namespaces
/1/device_path
70 rmdir --ignore-fail-on-non-empty /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname/namespaces
/1
71 rmdir --ignore-fail-on-non-empty /sys
/kernel
/config
/nvmet
/subsystems
/$subsystemname
72 rmdir --ignore-fail-on-non-empty /sys
/kernel
/config
/nvmet
/ports
/1
80 timing_exit identify_kernel_nvmf_tgt