(In reply to Fran�ois Valenduc from comment #27) > Adding these lines doesn't change anything. In fact, the disk and the > partition are detected. The problem is rather that the LVM volumes are not > found. In my case the difference between working and bad initrd is: diff -Nur good/usr/lib/udev/rules.d/61-persistent-storage-compat.rules bad/usr/lib/udev/rules.d/61-persistent-storage-compat.rules --- good/usr/lib/udev/rules.d/61-persistent-storage-compat.rules 2017-08-20 20:58:53.723996905 +0200 +++ bad/usr/lib/udev/rules.d/61-persistent-storage-compat.rules 2017-08-20 20:59:04.775996863 +0200 @@ -37,10 +37,11 @@ # NVMe links were introduced first via a SUSE specific commit # (bsc#944132) and upstream gained support later but of course using a -# different scheme. -KERNEL=="nvme*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}!="?*", IMPORT{program}="scsi_id --export --whitelisted -d $tempnode", ENV{ID_BUS}="nvme" -KERNEL=="nvme*", ENV{DEVTYPE}=="disk", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}" -KERNEL=="nvme*", ENV{DEVTYPE}=="partition", ENV{ID_SERIAL}=="?*", SYMLINK+="disk/by-id/$env{ID_BUS}-$env{ID_SERIAL}-part%n" +# different scheme. Also note that ID_SERIAL is already used by the +# contemporary rules, see bsc#1048679 for details. +KERNEL=="nvme*", ENV{DEVTYPE}=="disk", ENV{ID_NVME_SERIAL_COMPAT}!="?*", PROGRAM="scsi_id --whitelisted --replace-whitespace -d $devnode", RESULT=="?*", ENV{ID_NVME_SERIAL_COMPAT}="$result" +KERNEL=="nvme*", ENV{DEVTYPE}=="disk", ENV{ID_NVME_SERIAL_COMPAT}=="?*", SYMLINK+="disk/by-id/nvme-$env{ID_NVME_SERIAL_COMPAT}" +KERNEL=="nvme*", ENV{DEVTYPE}=="partition", ENV{ID_NVME_SERIAL_COMPAT}=="?*", SYMLINK+="disk/by-id/nvme-$env{ID_NVME_SERIAL_COMPAT}-part%n" # SCSI compat links for ATA devices, removed by f6ba1a468cea (boo#769002) KERNEL=="sd*[!0-9]", ENV{ID_BUS}=="ata", PROGRAM="scsi_id --whitelisted --replace-whitespace -p0x80 -d $devnode", RESULT=="?*", ENV{ID_SCSI_COMPAT}="$result", SYMLINK+="disk/by-id/scsi-$env{ID_SCSI_COMPAT}" So, Lee might be correct.