Debian: Add lvm2 upstream fix for event_activation

Historically, with CentOS, we had issues related to LV activation
occurring in a non-deterministic way and causing an assortment of
provisioning issues. More deterministic LV activation was achieved by
setting use_lvmetad = 0 in /etc/lvm/lvm.conf

In the migration to Debian, a much more recent version of the lvm2
package is in use. In the intervening versions of lvm2, lvmetad was
removed making use_lvmetad and the associated behavior now obsolete.

In some current random testing scenarios, emergency mode is seen when
booting the Debian ISO. Reviewing the systemd dump of services
initiating when emergency mode occurs, it is observed that LV activation
is occurring at a different time and order vs. a successful boot.

The Debian lvm2 version provides configuration parameter
global/event_activation which when set to 0 will change LV activation
behavior when a PV appears. No noticable change was observed when this
variable is set.

The current upstream version from Debian Bullseye is missing an lvm2
upstream patch the should address this issue.

Patch the Debian lvm2 version with this upstream patch to enable testing
with this enabled.

Test Plan:
PASS - Build ISO, install/provision in AIO-SX virtual/hardware labs
PASS - Perform numerous reboot cycles an observe no issues
PASS - Test on H/W setup that has shown energency mode behavior to
       confirm that this version and associated config file change
       resolved emergency mode PV/LV activation issues

Change-Id: If22e446126f33c2155bd70988ed9b0444d230730
Partial-Bug: #1979105
Signed-off-by: Robert Church <robert.church@windriver.com>
This commit is contained in:
Robert Church 2022-06-17 21:59:33 -04:00 committed by Felipe Sanches Zanoni
parent 6d3a1908e5
commit 52537418e6
7 changed files with 75 additions and 0 deletions

View File

@ -0,0 +1,23 @@
From bb0ec0c9e8996801d5925831d9b2001d76c1cff2 Mon Sep 17 00:00:00 2001
From: Robert Church <robert.church@windriver.com>
Date: Mon, 6 Jun 2022 01:06:15 -0400
Subject: [PATCH] Change from unsupported gitarchive format to quilt
The current build infrastructure doesn't support source patching of
archives that have the gitarchive source format.
Signed-off-by: Robert Church <robert.church@windriver.com>
---
debian/source/format | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/debian/source/format b/debian/source/format
index 7cb8623..163aaf8 100644
--- a/debian/source/format
+++ b/debian/source/format
@@ -1 +1 @@
-3.0 (gitarchive)
+3.0 (quilt)
--
2.16.6

View File

@ -0,0 +1 @@
0001-Change-from-unsupported-gitarchive-format-to-quilt.patch

View File

@ -0,0 +1,11 @@
---
debname: lvm2
debver: 2.03.11-2
dl_path:
name: lvm2-2.03.11-2.tar.gz
url: https://salsa.debian.org/lvm-team/lvm2/-/archive/debian/2.03.11-2/lvm2-debian-2.03.11-2.tar.gz
md5sum: 07f9094c926a96977edc43ea0d665e2a
sha256sum: 6bd5c31725f30e573bdf583204833ca36ac0f5e9a05f043ee8ebfe41142af59a
revision:
dist: $STX_DIST
PKG_GITREVCOUNT: true

View File

@ -0,0 +1,37 @@
From da88d405f414c864857fd63aeddf4e3125bd166f Mon Sep 17 00:00:00 2001
From: Zdenek Kabelac <zkabelac@redhat.com>
Date: Mon, 8 Feb 2021 16:28:18 +0100
Subject: [PATCH] pvscan: support disabled event_activation
In past we had this control with use_lvmetad check for
pvscan --cache -aay
Howerer this got lost with lvmetad removal commit:
117160b27e510dceb1ed6acf995115c040acd88d
When user sets lvm.conf global/event_activation=0
pvscan service will no longer auto activate any LVs on appeared PVs.
---
tools/pvscan.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/tools/pvscan.c b/tools/pvscan.c
index 55c708682..7493c402b 100644
--- a/tools/pvscan.c
+++ b/tools/pvscan.c
@@ -1575,6 +1575,12 @@ int pvscan_cache_cmd(struct cmd_context *cmd, int argc, char **argv)
dm_list_init(&complete_vgnames);
+ if (do_activate &&
+ !find_config_tree_bool(cmd, global_event_activation_CFG, NULL)) {
+ log_verbose("Ignoring pvscan --cache -aay because event_activation is disabled.");
+ return ECMD_PROCESSED;
+ }
+
if (arg_is_set(cmd, major_ARG) + arg_is_set(cmd, minor_ARG))
devno_args = 1;
--
2.16.6

View File

@ -0,0 +1 @@
0001-pvscan-support-disabled-event_activation.patch

View File

@ -4,6 +4,7 @@ facter
puppet
drbd-tools
parted
lvm2
trident-installer
iputils-arping
iputils-ping

View File

@ -6,6 +6,7 @@ base/haproxy
base/libfdt
base/lighttpd
base/linuxptp
base/lvm2
base/lsb
base/pf-bb-config
base/systemd