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}"