On Thu, Aug 22, 2019 at 12:10:23PM -0700, Sagi Grimberg wrote: >> You are correct that this information can be derived from sysfs, but the >> main reason why we add these here, is because in udev rule we can't >> just go ahead and start looking these up and parsing these.. >> >> We could send the discovery aen with NVME_CTRL_NAME and have >> then have systemd run something like: >> >> nvme connect-all -d nvme0 --sysfs >> >> and have nvme-cli retrieve all this stuff from sysfs? > > Actually that may be a problem. > > There could be a hypothetical case where after the event was fired > and before it was handled, the discovery controller went away and > came back again with a different controller instance, and the old > instance is now a different discovery controller. > > This is why we need this information in the event. And we verify this > information in sysfs in nvme-cli.
Well, that must be a usual issue with uevents, right? Don't we usually have a increasing serial number for that or something? If I look at other callers of kobject_uevent_env none throws in such a huge context. > > Makes sense? ---end quoted text---