nvme-tcp: leverage request plugging
authorSagi Grimberg <sagi@grimberg.me>
Fri, 19 Jun 2020 00:30:23 +0000 (17:30 -0700)
committerChristoph Hellwig <hch@lst.de>
Wed, 8 Jul 2020 14:16:18 +0000 (16:16 +0200)
commit86f0348ace1510d7ac25124b096fb88a6ab45270
tree852edd5979aea8494b0f68d065fde21d66471986
parent15ec928a65e0528ef4999e2947b4802b772f0891
nvme-tcp: leverage request plugging

blk-mq request plugging can improve the execution of our pipeline.
When we queue a request we actually trigger our I/O worker thread
yielding a context switch by definition. However if we know that
there are more requests in the pipe that are coming, we are better
off not trigger our I/O worker and only do that for the last request
in the batch (bd->last). By having it, we improve efficiency by
amortizing context switches over a batch of requests.

Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Tested-by: Mark Wunderlich <mark.wunderlich@intel.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/host/tcp.c