linux/drivers/nvme/host
Sagi Grimberg d09f2b45f3 nvme: split nvme_uninit_ctrl into stop and uninit
Usually before we teardown the controller we want to:
1. complete/cancel any ctrl inflight works
2. remove ctrl namespaces (only for removal though, resets
   shouldn't remove any namespaces).

but we do not want to destroy the controller device as
we might use it for logging during the teardown stage.

This patch adds nvme_start_ctrl() which queues inflight
controller works (aen, ns scan, queue start and keep-alive
if kato is set) and nvme_stop_ctrl() which cancels the works
namespace removal is left to the callers to handle.

Move nvme_uninit_ctrl after we are done with the
controller device.

Reviewed-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
2017-07-06 09:49:42 +03:00
..
core.c nvme: split nvme_uninit_ctrl into stop and uninit 2017-07-06 09:49:42 +03:00
fabrics.c nvme-fabrics: verify that a controller returns the correct NQN 2017-06-28 08:14:13 -06:00
fabrics.h nvme: read the subsystem NQN from Identify Controller 2017-06-28 08:14:13 -06:00
fc.c nvme: split nvme_uninit_ctrl into stop and uninit 2017-07-06 09:49:42 +03:00
Kconfig nvme: Remove SCSI translations 2017-06-28 08:14:13 -06:00
lightnvm.c lightnvm: propagate right error code to target 2017-06-26 16:24:53 -06:00
Makefile nvme: Makefile: remove dead build rule 2017-06-29 09:43:23 -06:00
nvme.h nvme: split nvme_uninit_ctrl into stop and uninit 2017-07-06 09:49:42 +03:00
pci.c nvme: split nvme_uninit_ctrl into stop and uninit 2017-07-06 09:49:42 +03:00
rdma.c nvme: split nvme_uninit_ctrl into stop and uninit 2017-07-06 09:49:42 +03:00