Project

General

Profile

Actions

Feature #14686

open

nvme should use namespace GUID for devid if available

Added by Hans Rosenfeld 17 days ago. Updated 16 days ago.

Status:
New
Priority:
Normal
Category:
driver - device drivers
Start date:
Due date:
% Done:

0%

Estimated time:
Difficulty:
Bite-size
Tags:
Gerrit CR:

Description

The nvme driver is currently ignoring the namespace GUID which NVMe 1.2 introduced. Many devices that support a NGUID do not set the EUI64, so the devid is constructed from vendor ID, model number, serial number and namespace ID.

As a first step towards full support for the namespace GUID, nvme should use it to create a devid.

Actions #1

Updated by Electric Monk 17 days ago

  • Gerrit CR set to 2147
Actions #2

Updated by Joshua M. Clulow 16 days ago

I think some combination of #10622, #10623, and #7119, is likely to make a shift in the devid for a ZFS pool device a non-event -- beyond a log message noting that the devid has changed.

That said, it would be good to confirm, during testing, a couple of cases:

  • that a mirrored root pool is still bootable; unlike single-vdev root pools, changes in the devices path of disks in a complex pool (mirrors, raidz, etc) are not tolerated by the fix for #7119, but I believe devid-only changes should not impact boot under any circumstance
  • that a non-boot pool (i.e., a second data pool other than the root pool) that is imported during boot via the cache file (i.e., it was not previously exported before reboot) survives across the change in devid as well

I think early boot ZFS pool things like that are probably the only things that end up using /etc/devices/devid_cache in any vaguely load-bearing fashion.

Actions

Also available in: Atom PDF