diff options
author | Christoph Hellwig <hch@lst.de> | 2023-05-19 06:40:50 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2023-05-19 19:52:42 -0600 |
commit | 9a67aa52a42b31ad44220cc218df3b75a5cd5d05 (patch) | |
tree | ddf14cd0f48f2907aaf4c19f369c1a5efe2ceead /block/blk-mq.h | |
parent | 1e82fadfc6b96ca79f69d0bcf938d31032bb43d2 (diff) |
blk-mq: don't use the requeue list to queue flush commands
Currently both requeues of commands that were already sent to the driver
and flush commands submitted from the flush state machine share the same
requeue_list struct request_queue, despite requeues doing head
insertions and flushes not. Switch to using two separate lists instead.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Damien Le Moal <dlemoal@kernel.org>
Link: https://lore.kernel.org/r/20230519044050.107790-8-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-mq.h')
-rw-r--r-- | block/blk-mq.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/block/blk-mq.h b/block/blk-mq.h index ec7d2fb0b3c8..8c642e9f32f1 100644 --- a/block/blk-mq.h +++ b/block/blk-mq.h @@ -47,7 +47,6 @@ int blk_mq_update_nr_requests(struct request_queue *q, unsigned int nr); void blk_mq_wake_waiters(struct request_queue *q); bool blk_mq_dispatch_rq_list(struct blk_mq_hw_ctx *hctx, struct list_head *, unsigned int); -void blk_mq_add_to_requeue_list(struct request *rq, blk_insert_t insert_flags); void blk_mq_flush_busy_ctxs(struct blk_mq_hw_ctx *hctx, struct list_head *list); struct request *blk_mq_dequeue_from_ctx(struct blk_mq_hw_ctx *hctx, struct blk_mq_ctx *start); |