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@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
}
}
--
2.48.1
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@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. Thanks, --Nilay
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@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.
/John
> Thanks,
> --Nilay
>
>
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@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
© 2016 - 2026 Red Hat, Inc.