summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Teigland <teigland@redhat.com>2022-03-25 14:13:56 -0500
committerDavid Teigland <teigland@redhat.com>2022-03-25 14:13:56 -0500
commit72f0b637d239c893ca49b05b83e2ebddc327e900 (patch)
treeb2fdb9a456b95148a01b66801d444fc4397b0045
parentc7a5b5cca067496f5912bf992dcfedb6771dd083 (diff)
downloadlvm2-72f0b637d239c893ca49b05b83e2ebddc327e900.tar.gz
vgchange monitor: don't use udev info
vgchange --monitor y is run during startup when udev is being initialized and is not yet ready to be used.
-rw-r--r--tools/vgchange.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/vgchange.c b/tools/vgchange.c
index fc076c1d5..09ade96a6 100644
--- a/tools/vgchange.c
+++ b/tools/vgchange.c
@@ -992,6 +992,17 @@ int vgchange(struct cmd_context *cmd, int argc, char **argv)
return ECMD_PROCESSED;
}
+ /*
+ * Do not use udev for device listing or device info because
+ * vgchange --monitor y is called during boot when udev is being
+ * initialized and is not yet ready to be used.
+ */
+ if (arg_is_set(cmd, monitor_ARG) &&
+ arg_int_value(cmd, monitor_ARG, DEFAULT_DMEVENTD_MONITOR)) {
+ init_obtain_device_list_from_udev(0);
+ init_external_device_info_source(DEV_EXT_NONE);
+ }
+
if (update)
flags |= READ_FOR_UPDATE;
else if (arg_is_set(cmd, activate_ARG))