Similar here. Had been getting error messages about missing PV during boot
for a while, but since everything worked fine once booted I didn't bother
to resolve that. Now I started getting boot errors instead. Turns out the
initramfs was missing a module (pata_atiixp) needed for the controller for
that PV. Working this out required time, and until that point I could only
boot previous kernel & initramfs (which required navigating grub menu so no
headless boots) and I didn't dare upgrade anything.

https://salsa.debian.org/lvm-team/lvm2/-/commit/2340adad4b3875331be1ba7abba881cc1b6e6738
for 2.03.15-1 appears to be the relevant commit here causing this change in
behavior. Probably has something to do with the --autoactivation flag which
I don't see documented on
https://manpages.debian.org/testing/lvm2/vgchange.8.en.html. It probably
makes sense for udev to wait for all PVs before activation *if* the PV can
be expected to turn up eventually. During boot, falling back to degraded
activation after some timeout might be beneficial, in particular to resolve
situations where the extra PVs need later boot steps to become available.

The man page describes --activationmode but according to comments in my
(unedited) /etc/lvm/lvm.conf that setting is "degraded" by default and
should thus be able to work with absent PVs. Particularly since I currently
don't even have any LVs on the absent PV. But perhaps --autoactivation
trumps that default? If you would like to get more data on why things
behave differently, I can probably restore a reproducing setup easily
enough and can then execute commands in the initramfs console to debug
further.

Steps that helped me fix the problem:
1. "lvm pvs" from the initramfs fallback prompt to see the missing PV
2. "lvm pvs" when booted from previous initramfs to see what device that
is, sdc1 in my case
3. "udevadm info -a -n /dev/sdc1 | grep -E 'looking|DRIVER'" to find the
driver needed for it
4. "$EDITOR /etc/initramfs-tools/modules" to add the module there
5. "update-initramfs -u -k 5.18.0-4-amd64" to build a new initramfs with
that module included

Reply via email to