28d3ae407e
This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/device-mapper-multipath.git#26a2cd7a3e189bf91263d17bc8a8c449cc043fb0
66 lines
2.2 KiB
Diff
66 lines
2.2 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Martin Wilck <mwilck@suse.com>
|
|
Date: Fri, 8 Jan 2021 17:36:40 +0100
|
|
Subject: [PATCH] libmultipath: coalesce_paths(): stop triggering spurious
|
|
uevents
|
|
|
|
Since 0d66e03 ("libmultipath: force map reload if udev incomplete"), we
|
|
force-reload maps that we find incompletely initialized by udev. If
|
|
select_action returns ACT_NOTHING nonetheless, the map must be initialized
|
|
in udev, and thus and "add" uevent must have been seen already. Triggering
|
|
this event once more is unlikely to fix anything for real.
|
|
|
|
Reverts: b516118 ("libmultipath: coalesce_paths: trigger uevent if nothing done")
|
|
|
|
Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
|
|
Signed-off-by: Benjamin Marzinski <bmarzins@redhat.com>
|
|
---
|
|
libmultipath/configure.c | 24 ------------------------
|
|
1 file changed, 24 deletions(-)
|
|
|
|
diff --git a/libmultipath/configure.c b/libmultipath/configure.c
|
|
index 999f3106..3263bb01 100644
|
|
--- a/libmultipath/configure.c
|
|
+++ b/libmultipath/configure.c
|
|
@@ -527,18 +527,6 @@ get_udev_for_mpp(const struct multipath *mpp)
|
|
return udd;
|
|
}
|
|
|
|
-static void
|
|
-trigger_udev_change(const struct multipath *mpp)
|
|
-{
|
|
- static const char change[] = "change";
|
|
- struct udev_device *udd = get_udev_for_mpp(mpp);
|
|
- if (!udd)
|
|
- return;
|
|
- condlog(3, "triggering %s uevent for %s", change, mpp->alias);
|
|
- sysfs_attr_set_value(udd, "uevent", change, sizeof(change)-1);
|
|
- udev_device_unref(udd);
|
|
-}
|
|
-
|
|
static void trigger_partitions_udev_change(struct udev_device *dev,
|
|
const char *action, int len)
|
|
{
|
|
@@ -1297,18 +1285,6 @@ int coalesce_paths (struct vectors *vecs, vector mpvec, char *refwwid,
|
|
continue;
|
|
}
|
|
|
|
- if (r == DOMAP_EXIST && mpp->action == ACT_NOTHING &&
|
|
- force_reload == FORCE_RELOAD_WEAK)
|
|
- /*
|
|
- * First time we're called, and no changes applied.
|
|
- * domap() was a noop. But we can't be sure that
|
|
- * udev has already finished setting up this device
|
|
- * (udev in initrd may have been shut down while
|
|
- * processing this device or its children).
|
|
- * Trigger a change event, just in case.
|
|
- */
|
|
- trigger_udev_change(find_mp_by_wwid(curmp, mpp->wwid));
|
|
-
|
|
conf = get_multipath_config();
|
|
allow_queueing = conf->allow_queueing;
|
|
put_multipath_config(conf);
|
|
--
|
|
2.17.2
|
|
|