Message ID | 20180306221550.10030-5-mwilck@suse.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Delegated to: | christophe varoqui |
Headers | show |
diff --git a/multipathd/main.c b/multipathd/main.c index f7b9676ddb28..90f0b29ade70 100644 --- a/multipathd/main.c +++ b/multipathd/main.c @@ -964,6 +964,14 @@ uev_update_path (struct uevent *uev, struct vectors * vecs) strcpy(pp->wwid, wwid); else pp->wwid_changed = 0; + } else { + udev_device_unref(pp->udev); + pp->udev = udev_device_ref(uev->udev); + conf = get_multipath_config(); + if (pathinfo(pp, conf, DI_SYSFS|DI_NOIO) != PATHINFO_OK) + condlog(1, "%s: pathinfo failed after change uevent", + uev->kernel); + put_multipath_config(conf); } if (pp->initialized == INIT_REQUESTED_UDEV)
Update pp->udev and those path attributes that can be cheaply updated from sysfs, i.e. without IO to the disk. Signed-off-by: Martin Wilck <mwilck@suse.com> --- multipathd/main.c | 8 ++++++++ 1 file changed, 8 insertions(+)