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.

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