50 lines
2 KiB
Diff
50 lines
2 KiB
Diff
From 4df121ed7d820f5b3d3a87a2c81dbce0801d4fd3 Mon Sep 17 00:00:00 2001
|
|
From: Christian Hesse <mail@eworm.de>
|
|
Date: Mon, 7 Feb 2022 21:12:20 +0100
|
|
Subject: [PATCH 1/1] udev initcpio
|
|
|
|
apply with:
|
|
patch -Np1 --output='udev/69-dm-lvm-initcpio.rules.in' < ../0001-udev-initcpio.patch
|
|
---
|
|
udev/69-dm-lvm.rules.in | 28 +---------------------------
|
|
1 file changed, 1 insertion(+), 27 deletions(-)
|
|
|
|
diff --git a/udev/69-dm-lvm.rules.in b/udev/69-dm-lvm.rules.in
|
|
index 14e7dd26d..2dec88c34 100644
|
|
--- a/udev/69-dm-lvm.rules.in
|
|
+++ b/udev/69-dm-lvm.rules.in
|
|
@@ -54,33 +54,7 @@ ACTION!="add", GOTO="lvm_end"
|
|
|
|
LABEL="lvm_scan"
|
|
|
|
-ENV{SYSTEMD_READY}="1"
|
|
-
|
|
-# pvscan will check if this device completes a VG,
|
|
-# i.e. all PVs in the VG are now present with the
|
|
-# arrival of this PV. If so, it prints to stdout:
|
|
-# LVM_VG_NAME_COMPLETE='foo'
|
|
-#
|
|
-# When the VG is complete it can be activated, so
|
|
-# vgchange -aay <vgname> is run. It is run via
|
|
-# systemd since it can take longer to run than
|
|
-# udev wants to block when processing rules.
|
|
-# (if there are hundreds of LVs to activate,
|
|
-# the vgchange can take many seconds.)
|
|
-#
|
|
-# pvscan only reads the single device specified,
|
|
-# and uses temp files under /run/lvm to check if
|
|
-# other PVs in the VG are present.
|
|
-#
|
|
-# If event_activation=0 in lvm.conf, this pvscan
|
|
-# (using checkcomplete) will do nothing, so that
|
|
-# no event-based autoactivation will be happen.
|
|
-#
|
|
-# TODO: adjust the output of vgchange -aay so that
|
|
-# it's better suited to appearing in the journal.
|
|
-
|
|
-IMPORT{program}="(LVM_EXEC)/lvm pvscan --cache --listvg --checkcomplete --vgonline --autoactivation event --udevoutput --journal=output $env{DEVNAME}"
|
|
-ENV{LVM_VG_NAME_COMPLETE}=="?*", RUN+="/usr/bin/systemd-run --no-block --property DefaultDependencies=no --unit lvm-activate-$env{LVM_VG_NAME_COMPLETE} (LVM_EXEC)/lvm vgchange -aay --autoactivation event $env{LVM_VG_NAME_COMPLETE}"
|
|
+RUN+="(LVM_EXEC)/lvm pvscan --background --cache --activate ay --major $major --minor $minor", ENV{LVM_SCANNED}="1"
|
|
GOTO="lvm_end"
|
|
|
|
LABEL="lvm_end"
|