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 [email protected]
Reviewed-by: Guan Junxiong [email protected]
---
 libmultipath/discovery.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c
index efac824..f1d303e 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.8.1.windows.1


--
dm-devel mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/dm-devel

Reply via email to