[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0656b66c-dd9c-495d-b1fc-4f09e763fa66@grimberg.me>
Date: Thu, 20 Feb 2025 13:05:04 +0200
From: Sagi Grimberg <sagi@...mberg.me>
To: Nilay Shroff <nilay@...ux.ibm.com>, Keith Busch <kbusch@...nel.org>,
John Meneghini <jmeneghi@...hat.com>
Cc: hch@....de, 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 19/02/2025 16:47, Nilay Shroff wrote:
>
> On 2/18/25 10:45 PM, Keith Busch wrote:
>> On Tue, Feb 18, 2025 at 11:31:58AM -0500, John Meneghini wrote:
>>> On 2/18/25 10:06 AM, Keith Busch wrote:
>>>> On Thu, Feb 13, 2025 at 03:37:28PM -0500, John Meneghini wrote:
>>>>> Keith, Christoph and Sagi,
>>>>>
>>>>> This patch has been fully tested and analyzed by Red Hat's QA group and no
>>>>> unexpected side effects or regressions have been found. Both NVMe/FC and NVMe/TCP
>>>>> have been tested. Our QE engineer has asked me to report this upstream.
>>>> What's the harm in leaving the parameter? *I* use it so I can test both
>>>> ways without needing to compile multiple kernels.
>>> LOL. We've been talking about this since 2017. The goal has always been to remove support for DMMP with NVMe.
>> I understand that disabling nvme native mp it is required for device
>> mapper, and I get you want to prevent the possibility of anyone using
>> dm-mp with nvme, but that isn't the only user that wants to see all
>> namespace paths.
>>
> Agreed! I do have nvme multi-controller disks and I toggle multipath module parameter to
> test it both ways. One with each individual path to a shared namespace and another with
> a single head node path and then let IO policy determine which path to choose for sending
> IO to disk.
> In fact, we have few nvme blktests which only runs if device is configured with single path
> and so testing it on multi-controller nvme disk would require us to turn off multipath module
> parameter. In that way this parameter is very handy. My typical way of
> toggling this parameter is:
> 1. disable multipath
> # rmmod nvme
> # rmmod nvme_core
> # modprobe nvme_core multipath=0
> # modprobe nvme
>
> Now I could run all nvme blktests which require us disable multipath.
>
> 2. enable multipath:
> # rmmod nvme
> # rmmmod nvme_core
> # modprobe nvme_core multipath=1
> # modprobe nvme
>
> Now if we get away with multipath parameter then it means we have to re-compile kernel
> disabling CONFIG_NVME_MULTIPATH option and that's something we may want to avoid,
> if possible.
>
> Having said that I'm not against this patch however we certainly have users who would
> be using multipath parameter and taking away this parameter may break those user
> application.
Sounds like the user application is already broken. This like any
modparam is not guaranteed
to stay, and we already have been warning users this is temporary and
will be removed for years.
> So I'm wondering why is it not possible for RedHat to let their customer
> know the fact that starting with RHEL-10, we don't support DMMP for NVMe device even
> though the multipath module parameter is present?
I get the testing argument, but I don't think its sufficient to keep
exposing a user facing
modparam.
This discussion is not specific to RHEL, if there is a real use-case
that we are interested in supporting,
we can change our minds and keep it (and simply remove the log msg), but
I haven't heard any real
life use-cases thus far.
Powered by blists - more mailing lists