All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC] multipath-tools: *untested* use sysfs prio also for arrays with dual implicit/explicit alua support
@ 2020-07-24 22:34 Xose Vazquez Perez
  2020-08-05 21:12 ` Martin Wilck
  0 siblings, 1 reply; 4+ messages in thread
From: Xose Vazquez Perez @ 2020-07-24 22:34 UTC (permalink / raw)
  To: Martin Wilck, Benjamin Marzinski, Hannes Reinecke, DM-DEVEL ML


Cc: Martin Wilck <mwilck@suse.com>
Cc: Benjamin Marzinski <bmarzins@redhat.com>
Cc: Hannes Reinecke <hare@suse.de>
Cc: DM-DEVEL ML <dm-devel@redhat.com>
Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
---
diff --git a/libmultipath/propsel.c b/libmultipath/propsel.c
index 897e48ca..5a82234f 100644
--- a/libmultipath/propsel.c
+++ b/libmultipath/propsel.c
@@ -595,7 +595,7 @@ detect_prio(struct config *conf, struct path * pp)
  		tpgs = path_get_tpgs(pp);
  		if (tpgs == TPGS_NONE)
  			return;
-		if ((tpgs == TPGS_EXPLICIT || !check_rdac(pp)) &&
+		if ((tpgs == TPGS_EXPLICIT || tpgs == TPGS_BOTH || !check_rdac(pp)) &&
  		    sysfs_get_asymmetric_access_state(pp, buff, 512) >= 0)
  			default_prio = PRIO_SYSFS;
  		else

In short:

diff --git a/libmultipath/propsel.c b/libmultipath/propsel.c
index 897e48ca..a9609a01 100644
--- a/libmultipath/propsel.c
+++ b/libmultipath/propsel.c
@@ -595,7 +595,7 @@ detect_prio(struct config *conf, struct path * pp)
  		tpgs = path_get_tpgs(pp);
  		if (tpgs == TPGS_NONE)
  			return;
-		if ((tpgs == TPGS_EXPLICIT || !check_rdac(pp)) &&
+		if ((tpgs != TPGS_IMPLICIT || !check_rdac(pp)) &&
  		    sysfs_get_asymmetric_access_state(pp, buff, 512) >= 0)
  			default_prio = PRIO_SYSFS;
  		else

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH RFC] multipath-tools: *untested* use sysfs prio also for arrays with dual implicit/explicit alua support
  2020-07-24 22:34 [PATCH RFC] multipath-tools: *untested* use sysfs prio also for arrays with dual implicit/explicit alua support Xose Vazquez Perez
@ 2020-08-05 21:12 ` Martin Wilck
  2020-08-10 21:27   ` Schremmer, Steven
  0 siblings, 1 reply; 4+ messages in thread
From: Martin Wilck @ 2020-08-05 21:12 UTC (permalink / raw)
  To: Xose Vazquez Perez, Benjamin Marzinski, Hannes Reinecke, DM-DEVEL ML
  Cc: Schremmer, Steven

Hi Xose,

do you have a specific use case where this helps / changes matters?

The idea of the current code is to use PRIO_SYSFS always, except for
RDAC arrays with implicit ALUA, where periodic RTPGs are necessary (see
7e2f46d). This patch would change matters only for RDAC arrays which
advertise both explicit and implicit ALUA support.

Maybe Steven can clarify if such RDAC arrays exist, and whether we
should use PRIO_SYSFS or PRIO_ALUA for them.

Martin


On Sat, 2020-07-25 at 00:34 +0200, Xose Vazquez Perez wrote:
> Cc: Martin Wilck <mwilck@suse.com>
> Cc: Benjamin Marzinski <bmarzins@redhat.com>
> Cc: Hannes Reinecke <hare@suse.de>
> Cc: DM-DEVEL ML <dm-devel@redhat.com>
> Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
> ---
> diff --git a/libmultipath/propsel.c b/libmultipath/propsel.c
> index 897e48ca..5a82234f 100644
> --- a/libmultipath/propsel.c
> +++ b/libmultipath/propsel.c
> @@ -595,7 +595,7 @@ detect_prio(struct config *conf, struct path *
> pp)
>   		tpgs = path_get_tpgs(pp);
>   		if (tpgs == TPGS_NONE)
>   			return;
> -		if ((tpgs == TPGS_EXPLICIT || !check_rdac(pp)) &&
> +		if ((tpgs == TPGS_EXPLICIT || tpgs == TPGS_BOTH ||
> !check_rdac(pp)) &&
>   		    sysfs_get_asymmetric_access_state(pp, buff, 512) >=
> 0)
>   			default_prio = PRIO_SYSFS;
>   		else
> 
> In short:
> 
> diff --git a/libmultipath/propsel.c b/libmultipath/propsel.c
> index 897e48ca..a9609a01 100644
> --- a/libmultipath/propsel.c
> +++ b/libmultipath/propsel.c
> @@ -595,7 +595,7 @@ detect_prio(struct config *conf, struct path *
> pp)
>   		tpgs = path_get_tpgs(pp);
>   		if (tpgs == TPGS_NONE)
>   			return;
> -		if ((tpgs == TPGS_EXPLICIT || !check_rdac(pp)) &&
> +		if ((tpgs != TPGS_IMPLICIT || !check_rdac(pp)) &&
>   		    sysfs_get_asymmetric_access_state(pp, buff, 512) >=
> 0)
>   			default_prio = PRIO_SYSFS;
>   		else
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH RFC] multipath-tools: *untested* use sysfs prio also for arrays with dual implicit/explicit alua support
  2020-08-05 21:12 ` Martin Wilck
@ 2020-08-10 21:27   ` Schremmer, Steven
  2020-08-11  9:52     ` Martin Wilck
  0 siblings, 1 reply; 4+ messages in thread
From: Schremmer, Steven @ 2020-08-10 21:27 UTC (permalink / raw)
  To: Martin Wilck, Xose Vazquez Perez, Benjamin Marzinski,
	Hannes Reinecke, DM-DEVEL ML

An RDAC array configured to run with Linux DM-MP should never report that it supports implicit and explicit ALUA support. If the array is configured to run with scsi_dh_rdac then it reports TPGS=0 (none) and should use rdac prio. The more modern configuration is to report TPGS=01b (implicit) and use scsi_dh_alua and alua prio.

Thanks,
Steve

> From: Martin Wilck <mwilck@suse.com>
> Sent: Wednesday, August 5, 2020 4:13 PM
> To: Xose Vazquez Perez <xose.vazquez@gmail.com>; Benjamin Marzinski <bmarzins@redhat.com>; Hannes Reinecke <hare@suse.de>;
> DM-DEVEL ML <dm-devel@redhat.com>
> Cc: Schremmer, Steven <Steve.Schremmer@netapp.com>
> Subject: Re: [PATCH RFC] multipath-tools: *untested* use sysfs prio also for arrays with dual implicit/explicit alua support
> 
> Hi Xose,
> 
> do you have a specific use case where this helps / changes matters?
> 
> The idea of the current code is to use PRIO_SYSFS always, except for
> RDAC arrays with implicit ALUA, where periodic RTPGs are necessary (see
> 7e2f46d). This patch would change matters only for RDAC arrays which
> advertise both explicit and implicit ALUA support.
> 
> Maybe Steven can clarify if such RDAC arrays exist, and whether we
> should use PRIO_SYSFS or PRIO_ALUA for them.
> 
> Martin
> 
> 
> On Sat, 2020-07-25 at 00:34 +0200, Xose Vazquez Perez wrote:
> > Cc: Martin Wilck <mwilck@suse.com>
> > Cc: Benjamin Marzinski <bmarzins@redhat.com>
> > Cc: Hannes Reinecke <hare@suse.de>
> > Cc: DM-DEVEL ML <dm-devel@redhat.com>
> > Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
> > ---
> > diff --git a/libmultipath/propsel.c b/libmultipath/propsel.c
> > index 897e48ca..5a82234f 100644
> > --- a/libmultipath/propsel.c
> > +++ b/libmultipath/propsel.c
> > @@ -595,7 +595,7 @@ detect_prio(struct config *conf, struct path *
> > pp)
> >               tpgs = path_get_tpgs(pp);
> >               if (tpgs == TPGS_NONE)
> >                       return;
> > -             if ((tpgs == TPGS_EXPLICIT || !check_rdac(pp)) &&
> > +             if ((tpgs == TPGS_EXPLICIT || tpgs == TPGS_BOTH ||
> > !check_rdac(pp)) &&
> >                   sysfs_get_asymmetric_access_state(pp, buff, 512) >=
> > 0)
> >                       default_prio = PRIO_SYSFS;
> >               else
> >
> > In short:
> >
> > diff --git a/libmultipath/propsel.c b/libmultipath/propsel.c
> > index 897e48ca..a9609a01 100644
> > --- a/libmultipath/propsel.c
> > +++ b/libmultipath/propsel.c
> > @@ -595,7 +595,7 @@ detect_prio(struct config *conf, struct path *
> > pp)
> >               tpgs = path_get_tpgs(pp);
> >               if (tpgs == TPGS_NONE)
> >                       return;
> > -             if ((tpgs == TPGS_EXPLICIT || !check_rdac(pp)) &&
> > +             if ((tpgs != TPGS_IMPLICIT || !check_rdac(pp)) &&
> >                   sysfs_get_asymmetric_access_state(pp, buff, 512) >=
> > 0)
> >                       default_prio = PRIO_SYSFS;
> >               else
> >
> 

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH RFC] multipath-tools: *untested* use sysfs prio also for arrays with dual implicit/explicit alua support
  2020-08-10 21:27   ` Schremmer, Steven
@ 2020-08-11  9:52     ` Martin Wilck
  0 siblings, 0 replies; 4+ messages in thread
From: Martin Wilck @ 2020-08-11  9:52 UTC (permalink / raw)
  To: Schremmer, Steven, Xose Vazquez Perez, Benjamin Marzinski,
	Hannes Reinecke, DM-DEVEL ML

On Mon, 2020-08-10 at 21:27 +0000, Schremmer, Steven wrote:
> An RDAC array configured to run with Linux DM-MP should never report
> that it supports implicit and explicit ALUA support. If the array is
> configured to run with scsi_dh_rdac then it reports TPGS=0 (none) and
> should use rdac prio. The more modern configuration is to report
> TPGS=01b (implicit) and use scsi_dh_alua and alua prio.
> 
> Thanks,
> Steve

Thanks, Steve. AFAICS that means that we don't need the RFC patch.

Regards
Martin

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-08-11  9:52 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-24 22:34 [PATCH RFC] multipath-tools: *untested* use sysfs prio also for arrays with dual implicit/explicit alua support Xose Vazquez Perez
2020-08-05 21:12 ` Martin Wilck
2020-08-10 21:27   ` Schremmer, Steven
2020-08-11  9:52     ` Martin Wilck

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.