Re: [PATCH blktests 1/2] nvme: Add _setup_nvmet_port_marginal

John Meneghini <[email protected]>
Newsgroups org.kernel.vger.linux-block,org.infradead.lists.linux-nvme
Organization RHEL Core Storge Team
Message-ID <[email protected]>
Good job Jesse. These tests work!

Reviewed-by: John Meneghini <[email protected]>
Tested-by: John Meneghini <[email protected]>

On 8/12/26 13:45, Jesse Taube wrote:
> Adds functionality to set up a NVME port in marginal state.
> This is useful for testing the behavior of the NVME driver when a port
> is in a marginal state.
> 
> Signed-off-by: Jesse Taube <[email protected]>
> ---
>   common/nvme | 30 ++++++++++++++++++++++++++++++
>   1 file changed, 30 insertions(+)
> 
> diff --git a/common/nvme b/common/nvme
> index f399937..d389e18 100644
> --- a/common/nvme
> +++ b/common/nvme
> @@ -153,6 +153,15 @@ _nvme_fcloop_add_tport() {
>   	echo "wwnn=${wwnn},wwpn=${wwpn}" > ${loopctl}/add_target_port
>   }
>   
> +_nvme_fcloop_set_rport_marginal() {
> +	local wwnn="$1"
> +	local wwpn="$2"
> +	local marginal="$3"
> +	local loopctl=/sys/class/fcloop/ctl
> +
> +	echo "wwnn=${wwnn},wwpn=${wwpn},marginal=${marginal}" > ${loopctl}/set_marginal_rport
> +}
> +
>   _nvme_fcloop_del_rport() {
>   	local local_wwnn="$1"
>   	local local_wwpn="$2"
> @@ -763,6 +772,27 @@ _create_nvmet_port() {
>   	echo "${port}"
>   }
>   
> +_setup_nvmet_port_marginal() {
> +	local -i port="$1"
> +	local state="${2}"
> +
> +	if [[ ! "${nvme_trtype}" == "fc" ]]; then
> +		echo "FAIL _setup_nvmet_port_marginal() only supports fc transport"
> +		exit 1
> +	fi
> +
> +	if [[ "${state}" == "live" ]]; then
> +		_nvme_fcloop_set_rport_marginal "$(_remote_wwnn $port)" \
> +					"$(_remote_wwpn $port)" 0
> +	elif [[ "${state}" == "marginal" ]]; then
> +		_nvme_fcloop_set_rport_marginal "$(_remote_wwnn $port)" \
> +					"$(_remote_wwpn $port)" 1
> +	else
> +		echo "FAIL _setup_nvmet_port_marginal() invalid state: ${state}"
> +		exit 1
> +	fi
> +}
> +
>   _setup_nvmet_port_ana() {
>   	local port="$1"
>   	local anagrpid="${2:-$def_anagrpid}"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.