export nvme drive model/serial strings via sysfs (trusty)
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Released
|
Undecided
|
Dan Streetman | ||
Trusty |
Fix Released
|
Undecided
|
Dan Streetman |
Bug Description
[Impact]
Without the model and serial strings for each nvme drive exported via sysfs, udev cannot create the /dev/disk/by-id/ symlinks, since it can't access the model/serial info. Without these symlinks, it's difficult to uniquely identify a specific nvme drive.
[Test Case]
The udev rules to create the nvme symlinks need updating, per bug 1642903 and bug 1647485. With the udev package updated with fixes/workarounds from those bugs, boot a kernel without this patch on a system with nvme drive(s), and check the /dev/disk/by-id/ directory; no symlinks to the nvme drives should be present. With this kernel patch, check the directory, and symlinks to all nvme drives and their partitions should be present, in the form of /dev/disk/
[Regression Potential]
Creating/managing sysfs files can result in problems ranging from memory leaks to a kernel oops, if not managed correctly.
[Other Info]
This functionality is present in upstream kernels, but the change diff between this kernel version and where this functionality appears upstream is massive - the driver changes from manually managing its userspace access over to using the standard device infrastructure, as well as numerous other bugfixes and feature changes. So instead of attempting to backport all those changes, this patch retains only a small part of the upstream patch and adds direct sysfs file creation using device_
Changed in linux (Ubuntu Trusty): | |
status: | New → Fix Committed |
Changed in linux (Ubuntu): | |
status: | Incomplete → Fix Committed |
Changed in linux (Ubuntu): | |
status: | Fix Committed → Fix Released |
This is relevant for trusty only; the nvme driver in xenial and later already exports the model/serial strings via sysfs.