[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250305235119.GB896@lst.de>
Date: Thu, 6 Mar 2025 00:51:19 +0100
From: Christoph Hellwig <hch@....de>
To: Keith Busch <kbusch@...nel.org>
Cc: Christoph Hellwig <hch@....de>, Hannes Reinecke <hare@...e.de>,
Sagi Grimberg <sagi@...mberg.me>,
Nilay Shroff <nilay@...ux.ibm.com>,
John Meneghini <jmeneghi@...hat.com>, bmarzins@...hat.com,
Bryan Gurney <bgurney@...hat.com>, linux-nvme@...ts.infradead.org,
linux-kernel@...r.kernel.org, Marco Patalano <mpatalan@...hat.com>,
axboe@...nel.dk
Subject: Re: [PATCH] nvme: remove multipath module parameter
On Wed, Mar 05, 2025 at 08:17:59AM -0700, Keith Busch wrote:
> > > Plus there are some NVMe devices out there which _despite_ being PCIe do
> > > report NMIC and CMIC set (I won't name names, if you came across them
> > > you'll know)
> >
> > ?????
> >
> > NMIC and CMIC is perfectly normal and expected for multiported PCIe.
> > WTF are you talking about?
>
> Obviously he's not talking about multiported PCIe.
Why is that obvious? At least based on the stated works he talks about
PCIe and not about multi-port. The only not multiported devices I've
seen that report NMIC and CMIC are a specific firmware so that the
customer would get multipath behavior, which is a great workaround for
instable heavily switched fabrics. Note that multiported isn't always
obvious as there are quite a few hacks using lane splitting around that
a normal host can't really see.
> And he's right, the
> behavior of a PCIe hot plug is very different and often undesirable when
> it's under native multipath.
If you do actual hotplug and expect the device to go away it's indeed
not desirable. If you want the same device to come back after switched
fabric issues it is so desirable that people hack to devices to get it.
People talked about adding a queue_if_no_path-like parameter to control
keeping the multipath node alive a lot, but no one has ever invested
work into actually implementing it.
Powered by blists - more mailing lists