Skip to content

Commit 9bb5eb6

Browse files
sagigrimbergkeithbusch
authored andcommitted
udev: convert the discovery event handler to the kernel support
The kernel will not send us a specific event for discovery but rather the AEN result code. So expect NVME_AEN=0x70f002 for discovery log change events. Also, we don't get the NVME_CTRL_NAME env var anymore as this is available from the device $kernel. Signed-off-by: Sagi Grimberg <[email protected]>
1 parent 5c1ab09 commit 9bb5eb6

1 file changed

Lines changed: 5 additions & 3 deletions

File tree

nvmf-autoconnect/udev-rules/70-nvmf-autoconnect.rules

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,12 @@
66
#
77

88
# Events from persistent discovery controllers or nvme-fc transport events
9-
ACTION=="change", SUBSYSTEM=="nvme", ENV{NVME_EVENT}=="discovery",\
10-
ENV{NVME_CTRL_NAME}=="*", ENV{NVME_TRTYPE}=="*", ENV{NVME_TRADDR}=="*", \
9+
# NVME_AEN:
10+
# type 0x2 (NOTICE) info 0xf0 (DISCOVERY_LOG_CHANGE) log-page-id 0x70 (DISCOVERY_LOG_PAGE)
11+
ACTION=="change", SUBSYSTEM=="nvme", ENV{NVME_AEN}=="0x70f002",\
12+
ENV{NVME_TRTYPE}=="*", ENV{NVME_TRADDR}=="*", \
1113
ENV{NVME_TRSVCID}=="*", ENV{NVME_HOST_TRADDR}=="*", \
12-
RUN+="/bin/systemctl --no-block start nvmf-connect@--device=$env{NVME_CTRL_NAME}\t--transport=$env{NVME_TRTYPE}\t--traddr=$env{NVME_TRADDR}\t--trsvcid=$env{NVME_TRSVCID}\t--host-traddr=$env{NVME_HOST_TRADDR}.service"
14+
RUN+="/bin/systemctl --no-block start nvmf-connect@--device=$kernel\t--transport=$env{NVME_TRTYPE}\t--traddr=$env{NVME_TRADDR}\t--trsvcid=$env{NVME_TRSVCID}\t--host-traddr=$env{NVME_HOST_TRADDR}.service"
1315

1416
# nvme-fc transport generated events (old-style for compatibility)
1517
ACTION=="change", SUBSYSTEM=="fc", ENV{FC_EVENT}=="nvmediscovery", \

0 commit comments

Comments
 (0)