[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250228032541.369804-3-jmeneghi@redhat.com>
Date: Thu, 27 Feb 2025 22:25:39 -0500
From: John Meneghini <jmeneghi@...hat.com>
To: kbusch@...nel.org,
hch@....de,
sagi@...mberg.me
Cc: loberman@...hat.com,
linux-nvme@...ts.infradead.org,
linux-kernel@...r.kernel.org,
emilne@...hat.com,
jmeneghi@...hat.com,
bgurney@...hat.com
Subject: [PATCH 2/4] nvme-multipath: add the NVME_MULTIPATH_PARAM config option
The NVME_MULTIPATH_PARAM option controls the core.nvme_multipath module
parameter. When NVME_MULTIPATH_PARAM=n the multipath parameter is removed
and core nvme multipathing is enabled. When NVME_MULTIPATH_PARAM=y
the multipath parameter is added and multipath support becomes
configurable with the core.nvme_multipath parameter.
By default NVME_MULTIPATH_PARAM=y
Signed-off-by: John Meneghini <jmeneghi@...hat.com>
---
drivers/nvme/host/Kconfig | 15 +++++++++++++++
drivers/nvme/host/multipath.c | 3 ++-
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/drivers/nvme/host/Kconfig b/drivers/nvme/host/Kconfig
index 91b0346ce65a..c4251504f201 100644
--- a/drivers/nvme/host/Kconfig
+++ b/drivers/nvme/host/Kconfig
@@ -28,6 +28,21 @@ config NVME_MULTIPATH
If unsure, say Y.
+config NVME_MULTIPATH_PARAM
+ bool "NVMe multipath param"
+ depends on NVME_CORE && NVME_MULTIPATH
+ help
+ This option enables configurable support for multipath access with
+ NVMe subsystems. If this option is enabled NVMe multipath support is
+ configured by the nvme core module parameter named "multipath". If
+ this option is disabled the nvme core module "multipath" parameter
+ is removed and support for NVMe multipath access can not be
+ configured. When this option is disabled a single /dev/nvmeXnY
+ device entry will be seen for each NVMe namespace, even if the
+ namespace is accessible through multiple controllers.
+
+ If unsure, say Y.
+
config NVME_VERBOSE_ERRORS
bool "NVMe verbose error reporting"
depends on NVME_CORE
diff --git a/drivers/nvme/host/multipath.c b/drivers/nvme/host/multipath.c
index 2a7635565083..4536ad5fbb82 100644
--- a/drivers/nvme/host/multipath.c
+++ b/drivers/nvme/host/multipath.c
@@ -10,10 +10,11 @@
#include "nvme.h"
bool multipath = true;
+#ifdef NVME_MULTIPATH_PARAM
module_param(multipath, bool, 0444);
MODULE_PARM_DESC(multipath,
"turn on native support for multiple controllers per subsystem");
-
+#endif
static const char *nvme_iopolicy_names[] = {
[NVME_IOPOLICY_NUMA] = "numa",
[NVME_IOPOLICY_RR] = "round-robin",
--
2.48.1
Powered by blists - more mailing lists