linux/drivers/nvme/host
Keith Busch 9ef3932e25 nvme/pci: No special case for queue busy on IO
This driver previously required we have a special check for IO submitted
to nvme IO queues that are temporarily suspended. That is no longer
necessary since blk-mq provides a quiesce, so any IO that actually gets
submitted to such a queue must be ended since the queue isn't going to
start back up.

This is fixing a condition where we have fewer IO queues after a
controller reset. This may happen if the number of CPU's has changed,
or controller firmware update changed the queue count, for example.

While it may be possible to complete the IO on a different queue, the
block layer does not provide a way to resubmit a request on a different
hardware context once the request has entered the queue. We don't want
these requests to be stuck indefinitely either, so ending them in error
is our only option at the moment.

Signed-off-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Jens Axboe <axboe@fb.com>
2017-02-22 13:34:00 -07:00
..
core.c nvme/core: Fix race kicking freed request_queue 2017-02-22 13:34:00 -07:00
fabrics.c nvme: make nvmf_register_transport require a create_ctrl callback 2017-02-22 13:34:00 -07:00
fabrics.h nvme: make nvmf_register_transport require a create_ctrl callback 2017-02-22 13:34:00 -07:00
fc.c nvme: make nvmf_register_transport require a create_ctrl callback 2017-02-22 13:34:00 -07:00
Kconfig nvme-fabrics: Add host support for FC transport 2016-12-06 10:17:56 +02:00
lightnvm.c lightnvm: use end_io callback instead of instance 2017-01-31 08:32:13 -07:00
Makefile nvme-fabrics: Add host support for FC transport 2016-12-06 10:17:56 +02:00
nvme.h nvme: Enable autonomous power state transitions 2017-02-22 13:34:00 -07:00
pci.c nvme/pci: No special case for queue busy on IO 2017-02-22 13:34:00 -07:00
rdma.c nvme: make nvmf_register_transport require a create_ctrl callback 2017-02-22 13:34:00 -07:00
scsi.c nvme/scsi: don't rely on BLK_MAX_CDB 2017-01-30 08:33:51 -07:00