1#!/usr/bin/env bash 2 3testdir=$(readlink -f $(dirname $0)) 4rootdir=$(readlink -f $testdir/../../..) 5source $rootdir/test/common/autotest_common.sh 6source $rootdir/test/nvmf/common.sh 7 8nvmftestinit 9 10timing_enter identify_kernel_nvmf_tgt 11 12subsystemname=nqn.2016-06.io.spdk:testnqn 13 14modprobe null_blk nr_devices=1 15modprobe nvmet 16modprobe nvmet-rdma 17modprobe nvmet-fc 18modprobe lpfc 19 20if [ ! -d /sys/kernel/config/nvmet/subsystems/$subsystemname ]; then 21 mkdir /sys/kernel/config/nvmet/subsystems/$subsystemname 22fi 23echo 1 > /sys/kernel/config/nvmet/subsystems/$subsystemname/attr_allow_any_host 24 25if [ ! -d /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1 ]; then 26 mkdir /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1 27fi 28 29echo -n /dev/nullb0 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/device_path 30echo 1 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/enable 31 32if [ ! -d /sys/kernel/config/nvmet/ports/1 ]; then 33 mkdir /sys/kernel/config/nvmet/ports/1 34fi 35 36echo -n rdma > /sys/kernel/config/nvmet/ports/1/addr_trtype 37echo -n ipv4 > /sys/kernel/config/nvmet/ports/1/addr_adrfam 38echo -n $NVMF_FIRST_TARGET_IP > /sys/kernel/config/nvmet/ports/1/addr_traddr 39echo -n $NVMF_PORT > /sys/kernel/config/nvmet/ports/1/addr_trsvcid 40 41ln -s /sys/kernel/config/nvmet/subsystems/$subsystemname /sys/kernel/config/nvmet/ports/1/subsystems/$subsystemname 42 43sleep 4 44 45$rootdir/examples/nvme/identify/identify -r "\ 46 trtype:$TEST_TRANSPORT \ 47 adrfam:IPv4 \ 48 traddr:$NVMF_FIRST_TARGET_IP \ 49 trsvcid:$NVMF_PORT \ 50 subnqn:nqn.2014-08.org.nvmexpress.discovery" -t all 51$rootdir/examples/nvme/identify/identify -r "\ 52 trtype:$TEST_TRANSPORT \ 53 adrfam:IPv4 \ 54 traddr:$NVMF_FIRST_TARGET_IP \ 55 trsvcid:$NVMF_PORT \ 56 subnqn:$subsystemname" 57 58rm -rf /sys/kernel/config/nvmet/ports/1/subsystems/$subsystemname 59 60echo 0 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/enable 61echo -n 0 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/device_path 62 63rmdir --ignore-fail-on-non-empty /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1 64rmdir --ignore-fail-on-non-empty /sys/kernel/config/nvmet/subsystems/$subsystemname 65rmdir --ignore-fail-on-non-empty /sys/kernel/config/nvmet/ports/1 66 67rmmod lpfc 68rmmod nvmet_fc 69rmmod nvmet-rdma 70rmmod null_blk 71rmmod nvmet 72 73nvmftestfini 74timing_exit identify_kernel_nvmf_tgt 75