LVM/device identifiers changed after kernel updates, resulting in missing VGs/PVs

Hi everyone,
I had a weird issue on my Rocky Linux 9.2 system after upgrading from kernel-5.14.0-162.23.1.el9_1.x86_64 to kernel-5.14.0-284.11.1.el9_2.x86_64.
One of my VGs on a Crucial NVMe/SSD disk disappeared.
The physical device path was fine.
I could see the partitions on the disk.
However LVM refused to bring the VG online. pvscan and vgscan all failed, complaining that a device previously on /dev/nvme0n1p1 was no longer available.
Rebooting to the previous kernel worked; the missing VG was visible once more.

After some deep-diving, the cause of the LVM failure was that LVM was using a “devices” file (/etc/lvm/devices/system.devices) and the kernels were reporting the wwid differently for the NVMe disk between the two versions.

Old: eui.6479a76080000043
New: nvme.c0a9-323231334536323230314331-435432303030503253534438-00000001

I renamed the old system.devices file, then ran pvscan, followed by vgscan, after which vgs showed the missing VG.
After that, I ran a vgimportdevices -a command which created a new system.devices file, containing the new wwid identifier.

A reboot to re-validate confirmed all okay.

I’m posting this here just in case anyone else hits this problem.

1 Like

This will be helpful for anyone running into this issue. This information is also documented in our release notes for 9.2: Current Release 9.2 - Documentation