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
8 rpc_py
="$rootdir/scripts/rpc.py"
12 # This argument is used in addition to the test arguments in autotest_common.sh
16 TEST_TIMEOUT
="${i#*=}"
23 timing_enter nvmf_fuzz_test
25 echo "[Nvme]" > $testdir/nvmf_fuzz.conf
26 echo " TransportID \"trtype:$TEST_TRANSPORT adrfam:IPv4 subnqn:nqn.2016-06.io.spdk:cnode1 traddr:$NVMF_FIRST_TARGET_IP trsvcid:$NVMF_PORT\" Nvme0" >> $testdir/nvmf_fuzz.conf
28 "${NVMF_APP[@]}" -m 0xF &> "$output_dir/nvmf_autofuzz_tgt_output.txt" &
31 trap 'process_shm --id $NVMF_APP_SHM_ID; rm -f $testdir/nvmf_fuzz.conf; killprocess $nvmfpid; nvmftestfini $1; exit 1' SIGINT SIGTERM EXIT
33 waitforlisten
$nvmfpid
34 $rpc_py nvmf_create_transport
-t $TEST_TRANSPORT -u 8192
36 $rpc_py bdev_malloc_create
-b Malloc0
64 512
38 $rpc_py nvmf_create_subsystem nqn
.2016-06.io.spdk
:cnode1
-a -s SPDK00000000000001
39 $rpc_py nvmf_subsystem_add_ns nqn
.2016-06.io.spdk
:cnode1 Malloc0
40 $rpc_py nvmf_subsystem_add_listener nqn
.2016-06.io.spdk
:cnode1
-t $TEST_TRANSPORT -a $NVMF_FIRST_TARGET_IP -s $NVMF_PORT
42 # Note that we chose a consistent seed to ensure that this test is consistent in nightly builds.
43 $rootdir/test
/app
/fuzz
/nvme_fuzz
/nvme_fuzz
-m 0xF0 -r "/var/tmp/nvme_fuzz" -t $TEST_TIMEOUT -C $testdir/nvmf_fuzz.conf
-N -a 2> $output_dir/nvmf_autofuzz_logs.txt
45 rm -f $testdir/nvmf_fuzz.conf
46 $rpc_py nvmf_delete_subsystem nqn
.2016-06.io.spdk
:cnode1
48 trap - SIGINT SIGTERM EXIT
52 timing_exit nvmf_fuzz_test