From: tang.junhui <tang.jun...@zte.com.cn>

Add "char *wwid" to point WWID of uevent. This member identifies
the LUN ID which the path belongs to, and it is used for merging
uevents. WWID possibly did not exist in uevent yet, so ->wwid
would be NULL, those uevents would not be merged, but be proccessed
as old way.

Change-Id: Ie6b076363b3735dc7de10184b27fa799b499af0e
Signed-off-by: tang.junhui <tang.jun...@zte.com.cn>
---
 libmultipath/uevent.c | 2 ++
 libmultipath/uevent.h | 1 +
 2 files changed, 3 insertions(+)

diff --git a/libmultipath/uevent.c b/libmultipath/uevent.c
index 7edcce1..ef1bafe 100644
--- a/libmultipath/uevent.c
+++ b/libmultipath/uevent.c
@@ -424,6 +424,8 @@ struct uevent *uevent_from_udev_device(struct udev_device 
*dev)
                        uev->devpath = uev->envp[i] + 8;
                if (strcmp(name, "ACTION") == 0)
                        uev->action = uev->envp[i] + 7;
+               if (strcmp(name, "ID_SERIAL") == 0)
+                       uev->wwid = uev->envp[i] + 10;
                i++;
                if (i == HOTPLUG_NUM_ENVP - 1)
                        break;
diff --git a/libmultipath/uevent.h b/libmultipath/uevent.h
index 9d22dcd..7bfccef 100644
--- a/libmultipath/uevent.h
+++ b/libmultipath/uevent.h
@@ -22,6 +22,7 @@ struct uevent {
        char *devpath;
        char *action;
        char *kernel;
+       char *wwid;
        unsigned long seqnum;
        char *envp[HOTPLUG_NUM_ENVP];
 };
-- 
2.8.1.windows.1


--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel

Reply via email to