[PATCH 0/5] nvmet/nvmet_fc: add events for discovery controller rescan
James Smart
jsmart2021 at gmail.com
Sat Oct 28 10:21:09 PDT 2017
A transport may have a transport-specific mechanism that can signal
when discovery controller content has changed and request a host
to reconnect to the discovery controller.
FC is such a transport. RSCNs may be generated by the FC port with
the discovery server, with the RSCNs then broadcast to the FC-NVME
hosts. A host, upon receiving the RSCN, would validate connectivity
then initiate a discovery controller rescan, allowing new subsystems
to be connected to or updating subsystem connectivity tables.
These patches:
- Modify the nvmet core layer to call a transport callback on every
subsystem add or remove from a transport port.
- Modify the nvmet-fc transport to support the callback, and add its
own internal lldd api to generate RSCN's via the lldd.
- Modify the lpfc driver to send/receive RSCNs for FC-NVME: transmit
the changed attribute RSCN on the target, receiving the RSCN on
the initiator and invoking the nvmet-fc transport rescan api.
Also adds manual sysfs mechanism to generate the RSCN on the target.
Dick Kennedy (1):
lpfc: Add sysfs interface to post NVME RSCN
James Smart (4):
nvmet: call transport on subsystem add and delete
nvmet_fc: support transport subsystem events
lpfc: Add support to generate RSCN events for nport
lpfc: Add NVME rescan support via RSCNs
drivers/nvme/target/configfs.c | 2 +
drivers/nvme/target/core.c | 10 ++++
drivers/nvme/target/fc.c | 10 ++++
drivers/nvme/target/nvmet.h | 2 +
drivers/scsi/lpfc/lpfc.h | 2 +
drivers/scsi/lpfc/lpfc_attr.c | 62 ++++++++++++++++++++
drivers/scsi/lpfc/lpfc_crtn.h | 4 ++
drivers/scsi/lpfc/lpfc_els.c | 118 +++++++++++++++++++++++++++++++++++++++
drivers/scsi/lpfc/lpfc_hbadisc.c | 35 ++++++++++++
drivers/scsi/lpfc/lpfc_hw.h | 9 +++
drivers/scsi/lpfc/lpfc_nvme.c | 42 ++++++++++++++
drivers/scsi/lpfc/lpfc_nvmet.c | 18 ++++++
drivers/scsi/lpfc/lpfc_sli.c | 1 +
include/linux/nvme-fc-driver.h | 6 ++
14 files changed, 321 insertions(+)
--
2.13.1
More information about the Linux-nvme
mailing list