All of lore.kernel.org
 help / color / mirror / Atom feed
From: Benjamin Marzinski <bmarzins@redhat.com>
To: Martin Wilck <martin.wilck@suse.com>
Cc: Muneendra Kumar M <muneendra.kumar@broadcom.com>,
	Christophe Varoqui <christophe.varoqui@opensvc.com>,
	device-mapper development <dm-devel@lists.linux.dev>
Subject: Re: [PATCH 2/2] multipathd: set rport port_state to marginal for NVMe devices
Date: Wed, 15 Jan 2025 13:59:01 -0500	[thread overview]
Message-ID: <Z4gFdSUb0JGFSAJ0@redhat.com> (raw)
In-Reply-To: <7fd13eec94452ac1128158aa7fb79ea08367641f.camel@suse.com>

On Tue, Jan 14, 2025 at 11:31:00PM +0100, Martin Wilck wrote:
> On Mon, 2025-01-06 at 12:39 -0500, Benjamin Marzinski wrote:
> > On Fri, Dec 20, 2024 at 04:25:22PM +0530, Muneendra Kumar M wrote:
> > > Hi Benjamin,
> > > Thanks for the changes.
> > > But below is the reason why we didn't add support to set the rport
> > > port_state to marginal for NVMe devices
> > > 
> > > In the case of SCSI  once rport-state is set to Marginal ,
> > > If any pending I/O's on the marginal path hit's the scsi-timeout
> > > (after
> > > abort success) the scsi-layer checks the rport-state  and If the
> > > rport-state is set to Marginal it will not do any retries on the
> > > Marginal
> > > path instead the I/O
> > > Will be retried on the other Active paths.
> > > 
> > > 
> > > This particular functionality(checking the rport-state and acting
> > > accordingly) we didn't add( as far I know) in the case of NVME and
> > > we need
> > > to check how we can handle this in the case of NVME .
> > > That's the reason we didn't set the port state to Marginal in the
> > > case of
> > > NVMe.
> > > 
> > > 
> > > In a brief SCSI layer handles the case when the rport-state is set
> > > to
> > > Marginal whereas in NVMe it doesn't(AFIK).
> > > 
> > > Atleast with the below changes we make sure that once we get the
> > > FPIN-LI
> > > notification we will set the affected path , as well as the rport-
> > > state to
> > > Marginal irrespective of SCSI and NVMe.
> > > 
> > > I am just thinking that until we have some changes in the NVME
> > > driver to
> > > handle (the rport-state to marginal) this changes doesn't show any
> > > impact
> > > in the case of NVMe
> > >  other then keeping it  on par with SCSI implementation.
> > > 
> > > Please let me know your opinion on the same.
> > 
> > The request to do this came because the user wanted to see which
> > target
> > ports were effected, but when they looked, none of them we in the
> > Marginal state. So there is some value in this for users, even if the
> > systems behavior doesn't change because of it.
> 
> Please add a note to the commit message explaining this.
> 
> I'm actually a bit concerned about it ... won't other users be even
> more confused when they see the path devices as marginal but don't
> observe any change in the system's usage of these paths?

Sure, I can add a commit message. But while this isn't implemented in
the NVMe layer, multipath will still route future IO differently. So,
any IO that multipath has already dispatched to the now marginal path
won't get treated differently, users will notice a change in IO patterns
going forward. Right?

-Ben

> 
> Regards,
> Martin


  reply	other threads:[~2025-01-15 18:59 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-20  2:02 [PATCH 0/2] multipath: set rport port_state on NVMe FPIN events Benjamin Marzinski
2024-12-20  2:02 ` [PATCH 1/2] libmultipath: export udev pthread cleanup functions Benjamin Marzinski
2025-01-10  6:07   ` Muneendra Kumar M
2024-12-20  2:02 ` [PATCH 2/2] multipathd: set rport port_state to marginal for NVMe devices Benjamin Marzinski
2024-12-20 10:55   ` Muneendra Kumar M
2025-01-06 17:39     ` Benjamin Marzinski
2025-01-09  6:03       ` Muneendra Kumar M
2025-01-10  4:49       ` Muneendra Kumar M
2025-01-14 22:31       ` Martin Wilck
2025-01-15 18:59         ` Benjamin Marzinski [this message]
2025-01-15 19:14           ` Martin Wilck
2025-01-14 22:23 ` [PATCH 0/2] multipath: set rport port_state on NVMe FPIN events Martin Wilck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=Z4gFdSUb0JGFSAJ0@redhat.com \
    --to=bmarzins@redhat.com \
    --cc=christophe.varoqui@opensvc.com \
    --cc=dm-devel@lists.linux.dev \
    --cc=martin.wilck@suse.com \
    --cc=muneendra.kumar@broadcom.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.