Comment 13 for bug 1642903

Revision history for this message
Dan Streetman (ddstreet) wrote :

I verified that the -proposed package does create the NVMe disk/by-id/ serial number symlink for each drive. However, there's unfortunately a bug in the way it does it, which still exists upstream. I opened this upstream udev bug for the problem:
https://github.com/systemd/systemd/issues/4833

The issue is any NVMe drives that include whitespace will break the way udev creates symlinks; e.g. if the model string is "XYZ Corp NVMe drive" then instead of creating:
/dev/disk/by-id/nvme-XYZ Corp NVMe drive_SERIAL -> ../../nvme0n1
it creates:
/dev/disk/by-id/nvme-XYZ -> ../../nvme0n1
/dev/Corp -> nvme0n1
/dev/NVMe -> nvme0n1
/dev/drive_SERIAL -> nvme0n1

So for NVMe drives that *do not* contain spaces in their model and serial strings, the -proposed package works correctly, but for NVMe drives that *do* contain spaces (or other chars that shouldn't be in a symlink, e.g. /$%?,), the -proposed package will create incorrect symlinks.