nvme: add support for batched completion of polled IO
authorJens Axboe <axboe@kernel.dk>
Fri, 8 Oct 2021 11:59:37 +0000 (05:59 -0600)
committerJens Axboe <axboe@kernel.dk>
Mon, 18 Oct 2021 20:40:45 +0000 (14:40 -0600)
commitc234a65392062504acf04afe0ae404cca61a8e1a
tree0de4b1a44146061491992c926c8ed484222a73e6
parentf794f3351f2672d782b8df0fa59f3cef38cffa59
nvme: add support for batched completion of polled IO

Take advantage of struct io_comp_batch, if passed in to the nvme poll
handler. If it's set, rather than complete each request individually
inline, store them in the io_comp_batch list. We only do so for requests
that will complete successfully, anything else will be completed inline as
before.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/nvme/host/core.c
drivers/nvme/host/nvme.h
drivers/nvme/host/pci.c