72 lines
2.3 KiB
Bash
72 lines
2.3 KiB
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
testdir=$(readlink -f $(dirname $0))
|
||
|
rootdir=$(readlink -f $testdir/../../..)
|
||
|
source $rootdir/scripts/autotest_common.sh
|
||
|
source $rootdir/test/nvmf/common.sh
|
||
|
|
||
|
set -e
|
||
|
|
||
|
if ! rdma_nic_available; then
|
||
|
echo "no NIC for nvmf test"
|
||
|
exit 0
|
||
|
fi
|
||
|
|
||
|
timing_enter identify_kernel_nvmf_tgt
|
||
|
|
||
|
subsystemname=nqn.2016-06.io.spdk:testnqn
|
||
|
|
||
|
modprobe null_blk nr_devices=1
|
||
|
modprobe nvmet
|
||
|
modprobe nvmet-rdma
|
||
|
|
||
|
if [ ! -d /sys/kernel/config/nvmet/subsystems/$subsystemname ]; then
|
||
|
mkdir /sys/kernel/config/nvmet/subsystems/$subsystemname
|
||
|
fi
|
||
|
echo 1 > /sys/kernel/config/nvmet/subsystems/$subsystemname/attr_allow_any_host
|
||
|
|
||
|
if [ ! -d /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1 ]; then
|
||
|
mkdir /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1
|
||
|
fi
|
||
|
|
||
|
echo -n /dev/nullb0 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/device_path
|
||
|
echo 1 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/enable
|
||
|
|
||
|
if [ ! -d /sys/kernel/config/nvmet/ports/1 ]; then
|
||
|
mkdir /sys/kernel/config/nvmet/ports/1
|
||
|
fi
|
||
|
|
||
|
echo rdma > /sys/kernel/config/nvmet/ports/1/addr_trtype
|
||
|
echo ipv4 > /sys/kernel/config/nvmet/ports/1/addr_adrfam
|
||
|
echo $NVMF_FIRST_TARGET_IP > /sys/kernel/config/nvmet/ports/1/addr_traddr
|
||
|
echo $NVMF_PORT > /sys/kernel/config/nvmet/ports/1/addr_trsvcid
|
||
|
|
||
|
ln -s /sys/kernel/config/nvmet/subsystems/$subsystemname /sys/kernel/config/nvmet/ports/1/subsystems/$subsystemname
|
||
|
|
||
|
modprobe -v nvme-rdma
|
||
|
|
||
|
if [ -e "/dev/nvme-fabrics" ]; then
|
||
|
chmod a+rw /dev/nvme-fabrics
|
||
|
fi
|
||
|
|
||
|
nvme discover -t rdma -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
|
||
|
|
||
|
#will replace with our own identify later
|
||
|
#$rootdir/examples/nvme/identify/identify -a "$NVMF_FIRST_TARGET_IP" -s "$NVMF_PORT" -n nqn.2014-08.org.nvmexpress.discovery -t all
|
||
|
nvmfcleanup
|
||
|
|
||
|
rm -rf /sys/kernel/config/nvmet/ports/1/subsystems/$subsystemname
|
||
|
|
||
|
echo 0 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/enable
|
||
|
echo -n 0 > /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1/device_path
|
||
|
|
||
|
rmdir --ignore-fail-on-non-empty /sys/kernel/config/nvmet/subsystems/$subsystemname/namespaces/1
|
||
|
rmdir --ignore-fail-on-non-empty /sys/kernel/config/nvmet/subsystems/$subsystemname
|
||
|
rmdir --ignore-fail-on-non-empty /sys/kernel/config/nvmet/ports/1
|
||
|
|
||
|
rmmod nvmet-rdma
|
||
|
rmmod null_blk
|
||
|
rmmod nvmet
|
||
|
|
||
|
timing_exit identify_kernel_nvmf_tgt
|