[PATCH 3/4] nvme: update the multipath warning in nvme_init_ns_head
Nilay Shroff
nilay at linux.ibm.com
Sun Mar 2 09:28:36 PST 2025
On 2/28/25 6:44 PM, John Meneghini wrote:
> On 2/28/25 1:28 AM, Nilay Shroff wrote:
>> On 2/28/25 8:55 AM, John Meneghini wrote:
>>> The new NVME_MULTIPATH_PARAM config option requires updates
>>> to the warning message in nvme_init_ns_head(). Remove
>>> the old warning message and add new ones.
>>>
>>> Signed-off-by: John Meneghini <jmeneghi at redhat.com>
>>> ---
>>> drivers/nvme/host/core.c | 10 +++++++++-
>>> 1 file changed, 9 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
>>> index 818d4e49aab5..c2b7e6834535 100644
>>> --- a/drivers/nvme/host/core.c
>>> +++ b/drivers/nvme/host/core.c
>>> @@ -3823,8 +3823,16 @@ static int nvme_init_ns_head(struct nvme_ns *ns, struct nvme_ns_info *info)
>>> dev_warn(ctrl->device,
>>> "Found shared namespace %d, but multipathing not supported.\n",
>>> info->nsid);
>>> +#ifdef CONFIG_NVME_MULTIPATH
>>> +#ifdef CONFIG_NVME_MULTIPATH_PARAM
>>> + dev_warn_once(ctrl->device,
>>> + "Shared namespace support requires core.nvme_multipath=Y.\n");
>>> +
>>> +#endif
>>> +#else
>>> dev_warn_once(ctrl->device,
>>> - "Support for shared namespaces without CONFIG_NVME_MULTIPATH is deprecated and will be removed in Linux 6.0.\n");
>>> + "Shared namespace support requires CONFIG_NVME_MULTIPATH.\n");
>>> +#endif
>>> }
>>> }
>>>
>>
>> As NVME_MULTIPATH_PARAM depends on NVME_MULTIPATH, it implicitly implies
>> that if NVME_MULTIPATH_PARAM is enabled then NVME_MULTIPATH has to be on.
>> So above logic could be simplified.
>>
>> However on another note, I really don't understand why do we need to add
>> new warning here as there's already a warning present just above your
>> changes.
>
> Agreed. How about if we just remove the
>
> dev_warn_once(ctrl->device,
> "Support for shared namespaces without CONFIG_NVME_MULTIPATH is deprecated and will be removed in Linux 6.0.\n");
>
> This is real problem. This is a confusing message since there is no now plan to remove any of these config options from the kernel.
I read it as "NVMe (native) multipathing is only supported when CONFIG_NVME_MULTIPATH
is configured".
So personally, I find existing warning messages (we print two warning messages when
multipath is false but shared namespace is detected) sufficient, however lets see
what others suggest.
Thanks,
--Nilay
More information about the Linux-nvme
mailing list