Loading doc/Doxyfile +1 −0 Original line number Diff line number Diff line Loading @@ -772,6 +772,7 @@ INPUT = ../include/spdk \ nvme/async_completion.md \ nvme/fabrics.md \ nvme/initialization.md \ nvme/hotplug.md \ nvme/io_submission.md \ nvme/multi_process.md \ nvmf/index.md \ Loading doc/nvme/hotplug.md 0 → 100644 +19 −0 Original line number Diff line number Diff line # NVMe Hotplug {#nvme_hotplug} At the NVMe driver level, we provide the following support for Hotplug: 1. Hotplug events detection: The user of the NVMe library can call spdk_nvme_probe() periodically to detect hotplug events. The probe_cb, followed by the attach_cb, will be called for each new device detected. The user may optionally also provide a remove_cb that will be called if a previously attached NVMe device is no longer present on the system. All subsequent I/O to the removed device will return an error. 2. Hot remove NVMe with IO loads: When a device is hot removed while I/O is occurring, all access to the PCI BAR will result in a SIGBUS error. The NVMe driver automatically handles this case by installing a SIGBUS handler and remapping the PCI BAR to a new, placeholder memory location. This means I/O in flight during a hot remove will complete with an appropriate error code and will not crash the application. @sa spdk_nvme_probe doc/nvme/index.md +1 −0 Original line number Diff line number Diff line Loading @@ -24,3 +24,4 @@ spdk_nvme_ctrlr_process_admin_completions() | @copybrief spdk_nvme_ctrlr_process - @ref nvme_async_completion - @ref nvme_fabrics_host - @ref nvme_multi_process - @ref nvme_hotplug Loading
doc/Doxyfile +1 −0 Original line number Diff line number Diff line Loading @@ -772,6 +772,7 @@ INPUT = ../include/spdk \ nvme/async_completion.md \ nvme/fabrics.md \ nvme/initialization.md \ nvme/hotplug.md \ nvme/io_submission.md \ nvme/multi_process.md \ nvmf/index.md \ Loading
doc/nvme/hotplug.md 0 → 100644 +19 −0 Original line number Diff line number Diff line # NVMe Hotplug {#nvme_hotplug} At the NVMe driver level, we provide the following support for Hotplug: 1. Hotplug events detection: The user of the NVMe library can call spdk_nvme_probe() periodically to detect hotplug events. The probe_cb, followed by the attach_cb, will be called for each new device detected. The user may optionally also provide a remove_cb that will be called if a previously attached NVMe device is no longer present on the system. All subsequent I/O to the removed device will return an error. 2. Hot remove NVMe with IO loads: When a device is hot removed while I/O is occurring, all access to the PCI BAR will result in a SIGBUS error. The NVMe driver automatically handles this case by installing a SIGBUS handler and remapping the PCI BAR to a new, placeholder memory location. This means I/O in flight during a hot remove will complete with an appropriate error code and will not crash the application. @sa spdk_nvme_probe
doc/nvme/index.md +1 −0 Original line number Diff line number Diff line Loading @@ -24,3 +24,4 @@ spdk_nvme_ctrlr_process_admin_completions() | @copybrief spdk_nvme_ctrlr_process - @ref nvme_async_completion - @ref nvme_fabrics_host - @ref nvme_multi_process - @ref nvme_hotplug