NVMe: Handle failures differently in nvme_submit_bio_queue()
authorMatthew Wilcox <matthew.r.wilcox@intel.com>
Mon, 14 Feb 2011 20:55:33 +0000 (15:55 -0500)
committerMatthew Wilcox <matthew.r.wilcox@intel.com>
Fri, 4 Nov 2011 19:52:58 +0000 (15:52 -0400)
commiteeee322647a67c20d9277c5e02c42b2126ea74bc
tree6e0c901136effb10e301a5fb0479389bb6818531
parent897cfe1ce7db152fa6dde576f4213a6160bf6502
NVMe: Handle failures differently in nvme_submit_bio_queue()

Return -EBUSY if the queue is full or -ENOMEM if we failed to allocate
memory (or map a scatterlist).  Also use GFP_ATOMIC to allocate the
nvme_bio and move the locking to the callers of nvme_submit_bio_queue().

In nvme_make_request(), don't permit an I/O to jump the queue -- if the
congestion list already has an entry, just add to the tail, rather than
trying to submit.

Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com>
drivers/block/nvme.c