[dm-devel] [PATCH v2] multipath-tools: output more topology info for NVMe discovery

Guan Junxiong guanjunxiong at huawei.com
Mon Dec 4 13:13:57 UTC 2017


From: Jie Yang <yangjie65 at huawei.com>

Assign sg_id.channel to controller id of the NVMe/NVMf target
and assign sg_id.lun to namespace ID of the target.

Signed-off-by: Jie Yang <yangjie65 at huawei.com>
Reviewed-by: Guan Junxiong <guanjunxiong at huawei.com>
---


change since V1:
  patch 2/2 --> path V2 becuase this is an independent patch


 libmultipath/discovery.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c
index cadf461..4b31dde 100644
--- a/libmultipath/discovery.c
+++ b/libmultipath/discovery.c
@@ -1206,12 +1206,14 @@ nvme_sysfs_pathinfo (struct path * pp, vector hwtable)
 		   &pp->sg_id.scsi_id) != 2)
 		return 1;
 	pp->sg_id.channel = 0;
-	pp->sg_id.lun = 0;
+	pp->sg_id.lun = atoi(udev_device_get_sysattr_value(pp->udev, "nsid"));
 
 	parent = udev_device_get_parent(pp->udev);
 	if (!parent)
 		return 1;
 
+	pp->sg_id.channel = atoi(udev_device_get_sysattr_value(parent, "cntlid"));
+
 	snprintf(pp->vendor_id, SCSI_VENDOR_SIZE, "NVME");
 	snprintf(pp->product_id, SCSI_PRODUCT_SIZE, "%s",
 		 udev_device_get_sysattr_value(parent, "model"));
-- 
2.6.4.windows.1





More information about the dm-devel mailing list