Martin, > I suppose 99.9% of users never bother with customizing the udev rules. Except for the other 99.9%, perhaps? :) We definitely have many users that tweak udev storage rules for a variety of reasons. Including being able to use RII for LUN naming purposes. > But we can actually combine both approaches. If "wwid" yields a good > value most of the time (which is true IMO), we could make user space > rely on it by default, and make it possible to set an udev property > (e.g. ENV{ID_LEGACY}="1") to tell udev rules to determine WWID > differently. User-space apps like multipath could check the ID_LEGACY > property to determine whether or not reading the "wwid" attribute would > be consistent with udev. That would simplify matters a lot for us (Ben, > do you agree?), without the need of adding endless BLIST entries. That's fine with me. > AFAICT, no major distribution uses "wwid" for this purpose (yet). We definitely have users that currently rely on wwid, although probably not through standard distro scripts. > In a recent discussion with Hannes, the idea came up that the priority > of "SCSI name string" designators should actually depend on their > subtype. "naa." name strings should map to the respective NAA > descriptors, and "eui.", likewise (only "iqn." descriptors have no > binary counterpart; we thought they should rather be put below NAA, > prio-wise). I like what NVMe did wrt. to exporting eui, nguid, uuid separately from the best-effort wwid. That's why I suggested separate sysfs files for the various page 0x83 descriptors. I like the idea of being able to explicitly ask for an eui if that's what I need. But that appears to be somewhat orthogonal to your request. > I wonder if you'd agree with a change made that way for "wwid". I > suppose you don't. I'd then propose to add a new attribute following > this logic. It could simply be an additional attribute with a different > name. Or this new attribute could be a property of the block device > rather than the SCSI device, like NVMe does it > (/sys/block/nvme0n2/wwid). That's fine. I am not a big fan of the idea that block/foo/wwid and block/foo/device/wwid could end up being different. But I do think that from a userland tooling perspective the consistency with NVMe is more important. -- Martin K. Petersen Oracle Linux Engineering