> On Mar 2, 2023, at 11:46 PM, Martin Wilck <mwilck@xxxxxxxx> wrote: > > On Tue, 2023-02-21 at 12:56 -0800, Brian Bunker wrote: >> A test unit ready command sent on a path in standby state will not >> result >> in a failed path. The same should be true for a path in the >> transitioning state. >> >> Signed-off-by: Brian Bunker brian@xxxxxxxxxxxxxxx > > In general, I'm somewhat reluctant to change things in this area. > GHOST state is not clearly defined, unfortunately; it has evolved > from the original "inq succeeds but tur fails" to a somewhat hand- > waving "something in between failed and up" semantics. > > Internally, multipathd treats GHOST paths almost exactly like UP paths, > except that they get a different priority assigned. If for whatever > reason multipathd switches to a PG in this state, the path state is > highly likely to switch to FAILED soon after, as regular IO will fail > on these paths; at least without explicit ALUA. Is that what we want to > see for TRANSITIONING state? > > But yes, this change is in the spirit of 5da642f ("Return 'ghost' state > when port is in standby"). > > CC'ing Ben for confirmation. > > Reviewed-by: Martin Wilck <mwilck@xxxxxxxx> Hello Martin, Doesn’t "something in between failed and up” semantics describe ALUA state transitioning pretty well? Thanks, Brian > > > >> --- >> libmultipath/checkers/tur.c | 5 +++-- >> 1 file changed, 3 insertions(+), 2 deletions(-) >> >> diff --git a/libmultipath/checkers/tur.c >> b/libmultipath/checkers/tur.c >> index 551dc4f0..fff7987b 100644 >> --- a/libmultipath/checkers/tur.c >> +++ b/libmultipath/checkers/tur.c >> @@ -179,10 +179,11 @@ retry: >> else if (key == 0x2) { >> /* Not Ready */ >> /* Note: Other ALUA states are either UP or >> DOWN */ >> - if( asc == 0x04 && ascq == 0x0b){ >> + if (asc == 0x04 && >> + (ascq == 0x0b || ascq == 0x0a)) { >> /* >> * LOGICAL UNIT NOT ACCESSIBLE, >> - * TARGET PORT IN STANDBY STATE >> + * TARGET PORT IN STANDBY OR >> TRANSITION STATE >> */ >> *msgid = CHECKER_MSGID_GHOST; >> return PATH_GHOST; >> -- >> >> -- >> dm-devel mailing list >> dm-devel@xxxxxxxxxx >> https://listman.redhat.com/mailman/listinfo/dm-devel -- dm-devel mailing list dm-devel@xxxxxxxxxx https://listman.redhat.com/mailman/listinfo/dm-devel