summaryrefslogtreecommitdiffstats
path: root/drivers/nvme/host/nvme.h
diff options
context:
space:
mode:
authorKeith Busch2016-05-12 16:37:14 +0200
committerJens Axboe2016-05-18 01:14:21 +0200
commit0ff9d4e1a284a9282a049bf064f123e27f838907 (patch)
treed37ba94c22fb1039c6e25f51f0479ec5afa3f72a /drivers/nvme/host/nvme.h
parentNVMe: Allow user initiated rescan (diff)
downloadkernel-qcow2-linux-0ff9d4e1a284a9282a049bf064f123e27f838907.tar.gz
kernel-qcow2-linux-0ff9d4e1a284a9282a049bf064f123e27f838907.tar.xz
kernel-qcow2-linux-0ff9d4e1a284a9282a049bf064f123e27f838907.zip
NVMe: Short-cut removal on surprise hot-unplug
This patch adds a new state that when set has the core automatically kill request queues prior to removing namespaces. If PCI device is not present at the time the nvme driver's remove is called, we can kill all IO queues immediately instead of waiting for the watchdog thread to do that at its polling interval. This improves scenarios where multiple hot plug events occur at the same time since it doesn't block the pci enumeration for as long. Signed-off-by: Keith Busch <keith.busch@intel.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'drivers/nvme/host/nvme.h')
-rw-r--r--drivers/nvme/host/nvme.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/nvme/host/nvme.h b/drivers/nvme/host/nvme.h
index 114b92873894..1daa0482de0e 100644
--- a/drivers/nvme/host/nvme.h
+++ b/drivers/nvme/host/nvme.h
@@ -72,6 +72,7 @@ enum nvme_ctrl_state {
NVME_CTRL_LIVE,
NVME_CTRL_RESETTING,
NVME_CTRL_DELETING,
+ NVME_CTRL_DEAD,
};
struct nvme_ctrl {