From: Ming Lei <ming.lei@redhat.com>
To: Keith Busch <kbusch@kernel.org>
Cc: Sagi Grimberg <sagi@grimberg.me>,
Christoph Hellwig <hch@infradead.org>,
John Meneghini <jmeneghi@redhat.com>,
"linux-nvme@lists.infradead.org" <linux-nvme@lists.infradead.org>,
ming.lei@redhat.com
Subject: Re: nvme/pcie hot plug results in /dev name change
Date: Wed, 15 Feb 2023 09:11:45 +0800 [thread overview]
Message-ID: <Y+wxUf6TAbEVNL+8@T590> (raw)
In-Reply-To: <Y+u0CtrjWBWL9aeB@kbusch-mbp>
On Tue, Feb 14, 2023 at 09:17:15AM -0700, Keith Busch wrote:
> On Tue, Feb 14, 2023 at 08:04:22AM +0800, Ming Lei wrote:
> > On Mon, Feb 13, 2023 at 09:32:35AM -0700, Keith Busch wrote:
> > > On Mon, Feb 13, 2023 at 04:01:03PM +0200, Sagi Grimberg wrote:
> > > > > Also not sure if this is going to work out, but it looks like a good start to
> > > > > me.
> > > > >
> > > > > Instead of user pinning the virtual device so that it never goes away though, I
> > > > > considered a user tunable "device missing delay" parameter to debounce link
> > > > > events. New IOs would be deferred to the requeue_list while the timer is
> > > > > active, and then EIO'ed if the timer expires without a successful LIVE
> > > > > controller attachment. The use cases I'm considering are short bounces from
> > > > > transient link resets, so I'd expect timers to be from a few seconds to maybe a
> > > > > minute.
> > > >
> > > > Isn't this equivalent to dm-mpath queue_if_no_path or no_path_timeout ?
> > >
> > > Similiar, but generic to non-multipath devices.
> > >
> > > > We can keep the mpath device around, but if not, what is the desired
> > > > behavior from the upper layers?
> > >
> > > I don't think we're looking for any behavioral changes in the upper layers.
> >
> > That also means no matter if the nvme mpath layer is added or not, upper
> > layer still has to handle this kind of failure, so what is the
> > difference made from the added nvme-mpath?
>
> I don't understand. There's no difference here for the upper layers. It's just
> a different timing from when a disconnect starts failing IO. The upper layers
If that isn't real disconnect, probably it is better to solve it
in nvme error handling, and device removal should be done as the
last straw.
> can keep doing what they're already doing in either case.
Because any device(include the to-be-invented mpath device) may be gone and
back, userspace needs to take measures to cover them if persistent
device name is required.
Thanks,
Ming
next prev parent reply other threads:[~2023-02-15 1:13 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-20 19:50 nvme/pcie hot plug results in /dev name change John Meneghini
2023-01-20 21:42 ` Keith Busch
2023-01-21 7:01 ` Christoph Hellwig
2023-01-29 10:28 ` Ming Lei
2023-01-31 16:38 ` Keith Busch
2023-02-01 2:33 ` Ming Lei
2023-02-01 6:27 ` Christoph Hellwig
2023-02-01 16:31 ` Keith Busch
2023-02-13 14:01 ` Sagi Grimberg
2023-02-13 16:32 ` Keith Busch
2023-02-14 0:04 ` Ming Lei
2023-02-14 9:18 ` Sagi Grimberg
2023-02-15 1:04 ` Ming Lei
2023-02-14 16:17 ` Keith Busch
2023-02-15 1:11 ` Ming Lei [this message]
2023-02-14 9:04 ` Sagi Grimberg
2023-02-15 6:18 ` Christoph Hellwig
2023-02-15 8:56 ` Sagi Grimberg
2023-02-15 22:18 ` Keith Busch
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=Y+wxUf6TAbEVNL+8@T590 \
--to=ming.lei@redhat.com \
--cc=hch@infradead.org \
--cc=jmeneghi@redhat.com \
--cc=kbusch@kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=sagi@grimberg.me \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox