summaryrefslogtreecommitdiffstats
path: root/include/linux/blk-mq.h
diff options
context:
space:
mode:
authorChengming Zhou <zhouchengming@bytedance.com>2023-07-17 12:00:58 +0800
committerJens Axboe <axboe@kernel.dk>2023-07-17 08:18:21 -0600
commit81ada09cc25e4bf2de7d2951925fb409338a545d (patch)
treeb486628026924a3c46956cafdce6d9604a135a29 /include/linux/blk-mq.h
parentb175c86739d38e41044d3136065f092a6d95aee6 (diff)
downloadlinux-stable-81ada09cc25e4bf2de7d2951925fb409338a545d.tar.gz
linux-stable-81ada09cc25e4bf2de7d2951925fb409338a545d.tar.bz2
linux-stable-81ada09cc25e4bf2de7d2951925fb409338a545d.zip
blk-flush: reuse rq queuelist in flush state machine
Since we don't need to maintain inflight flush_data requests list anymore, we can reuse rq->queuelist for flush pending list. Note in mq_flush_data_end_io(), we need to re-initialize rq->queuelist before reusing it in the state machine when end, since the rq->rq_next also reuse it, may have corrupted rq->queuelist by the driver. This patch decrease the size of struct request by 16 bytes. Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Ming Lei <ming.lei@redhat.com> Link: https://lore.kernel.org/r/20230717040058.3993930-5-chengming.zhou@linux.dev Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/blk-mq.h')
-rw-r--r--include/linux/blk-mq.h1
1 files changed, 0 insertions, 1 deletions
diff --git a/include/linux/blk-mq.h b/include/linux/blk-mq.h
index 67f810857634..01e8c31db665 100644
--- a/include/linux/blk-mq.h
+++ b/include/linux/blk-mq.h
@@ -178,7 +178,6 @@ struct request {
struct {
unsigned int seq;
- struct list_head list;
rq_end_io_fn *saved_end_io;
} flush;