diff options
author | Christoph Hellwig <hch@lst.de> | 2024-11-13 18:20:41 +0300 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2024-11-13 21:40:33 +0300 |
commit | beadf0088501d9dcf2454b05d90d5d31ea3ba55f (patch) | |
tree | 3f707e136adb0dc3920a6943756ba5ddc5b1002f /tools/perf/scripts/python/stackcollapse.py | |
parent | e559ee022658c70bdc07c4846bf279f5a5abc494 (diff) | |
download | linux-beadf0088501d9dcf2454b05d90d5d31ea3ba55f.tar.xz |
nvme-pci: reverse request order in nvme_queue_rqs
blk_mq_flush_plug_list submits requests in the reverse order that they
were submitted, which leads to a rather suboptimal I/O pattern especially
in rotational devices. Fix this by rewriting nvme_queue_rqs so that it
always pops the requests from the passed in request list, and then adds
them to the head of a local submit list. This actually simplifies the
code a bit as it removes the complicated list splicing, at the cost of
extra updates of the rq_next pointer. As that should be cache hot
anyway it should be an easy price to pay.
Fixes: d62cbcf62f2f ("nvme: add support for mq_ops->queue_rqs()")
Signed-off-by: Christoph Hellwig <hch@lst.de>
Link: https://lore.kernel.org/r/20241113152050.157179-2-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'tools/perf/scripts/python/stackcollapse.py')
0 files changed, 0 insertions, 0 deletions