[PATCH 1/6] nvmeof-tcp/001: simple test for nvmeof-tcp connection

Sagi Grimberg sagi at grimberg.me
Sun Nov 14 02:31:16 PST 2021


> Signed-off-by: Hannes Reinecke <hare at suse.de>
> ---
>   tests/nvmeof-tcp/001     |  55 +++++++
>   tests/nvmeof-tcp/001.out |   6 +
>   tests/nvmeof-tcp/rc      | 347 +++++++++++++++++++++++++++++++++++++++

Why another directory? why nvmeof-tcp? what prevents inband-auth
to be tested with loop/rdma?

>   3 files changed, 408 insertions(+)
>   create mode 100644 tests/nvmeof-tcp/001
>   create mode 100644 tests/nvmeof-tcp/001.out
>   create mode 100644 tests/nvmeof-tcp/rc
> 
> diff --git a/tests/nvmeof-tcp/001 b/tests/nvmeof-tcp/001
> new file mode 100644
> index 0000000..39f4108
> --- /dev/null
> +++ b/tests/nvmeof-tcp/001
> @@ -0,0 +1,55 @@
> +#!/bin/bash
> +# SPDX-License-Identifier: GPL-3.0+
> +# Copyright (C) 2021 Hannes Reinecke, SUSE Labs
> +#
> +# Test nvme over tcp connection
> +
> +. tests/nvmeof-tcp/rc
> +
> +DESCRIPTION="Create single TCP connection via localhost"
> +QUICK=1
> +
> +requires() {
> +	_nvme_requires
> +	_have_modules loop
> +	_require_nvme_trtype_is_fabrics
> +}
> +
> +
> +test() {
> +	local port
> +	local genctr
> +	local subsys="blktests-subsystem-"
> +	local hostid="$(uuidgen)"
> +	local hostnqn="nqn.2014-08.org.nvmexpress:uuid:${hostid}"
> +	local scratch="/tmp/blktest-ns1.img"
> +
> +	echo "Running ${TEST_NAME}"
> +
> +	_setup_nvmet
> +
> +	truncate -s 512M "${scratch}"
> +
> +	port="$(_create_nvmet_port "${nvme_trtype}")"
> +
> +	_create_nvmet_subsystem "${subsys}1" "${scratch}"
> +	_add_nvmet_subsys_to_port "${port}" "${subsys}1"
> +	_create_nvmet_host "${subsys}1" "${hostnqn}"
> +
> +	nvme connect -t "${nvme_trtype}" -n "${subsys}1" \
> +	     -a "${def_traddr}" -s "${def_trsvcid}" \
> +	     --hostnqn="${hostnqn}" --hostid="${hostid}"
> +
> +	nvme list-subsys
> +
> +	nvme disconnect -n "${subsys}1"
> +
> +	_remove_nvmet_subsystem_from_port "${port}" "${subsys}1"
> +	_remove_nvmet_subsystem "${subsys}1"
> +
> +	_remove_nvmet_port "${port}"
> +
> +	rm ${scratch}
> +
> +	echo "Test complete"
> +}
> diff --git a/tests/nvmeof-tcp/001.out b/tests/nvmeof-tcp/001.out
> new file mode 100644
> index 0000000..1eae834
> --- /dev/null
> +++ b/tests/nvmeof-tcp/001.out
> @@ -0,0 +1,6 @@
> +Running nvmeof-tcp/001
> +nvme-subsys0 - NQN=blktests-subsystem-1
> +\
> + +- nvme0 tcp traddr=127.0.0.1,trsvcid=4420 live
> +NQN:blktests-subsystem-1 disconnected 1 controller(s)
> +Test complete
> diff --git a/tests/nvmeof-tcp/rc b/tests/nvmeof-tcp/rc
> new file mode 100644
> index 0000000..9ae0899
> --- /dev/null
> +++ b/tests/nvmeof-tcp/rc
> @@ -0,0 +1,347 @@
> +#!/bin/bash
> +# SPDX-License-Identifier: GPL-3.0+
> +# Copyright (C) 2018 Johannes Thumshirn
> +#
> +# Test specific to NVMe devices

Isn't this just a copy of nvme/rc?



More information about the Linux-nvme mailing list