From: Chengkaitao The value of 'hctx->queue' is already stored in '*q' within dd_insert_requests, we can directly reuse the result instead of dereferencing hctx again in the dd_insert_request function. This patch removes the redundant operation and modifies the function's parameters accordingly. We can eliminate an LDR instruction. Signed-off-by: Chengkaitao --- v2: 1. Remove the changes related to bfq-iosched. 2. Add more commit message. v1: https://lore.kernel.org/all/20251016131651.83182-1-pilgrimtao@gmail.com/ --- block/mq-deadline.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/block/mq-deadline.c b/block/mq-deadline.c index 3e741d33142d..5007d811a738 100644 --- a/block/mq-deadline.c +++ b/block/mq-deadline.c @@ -633,10 +633,9 @@ static bool dd_bio_merge(struct request_queue *q, struct bio *bio, /* * add rq to rbtree and fifo */ -static void dd_insert_request(struct blk_mq_hw_ctx *hctx, struct request *rq, +static void dd_insert_request(struct request_queue *q, struct request *rq, blk_insert_t flags, struct list_head *free) { - struct request_queue *q = hctx->queue; struct deadline_data *dd = q->elevator->elevator_data; const enum dd_data_dir data_dir = rq_data_dir(rq); u16 ioprio = req_get_ioprio(rq); @@ -694,7 +693,7 @@ static void dd_insert_requests(struct blk_mq_hw_ctx *hctx, rq = list_first_entry(list, struct request, queuelist); list_del_init(&rq->queuelist); - dd_insert_request(hctx, rq, flags, &free); + dd_insert_request(q, rq, flags, &free); } spin_unlock(&dd->lock); -- 2.50.1 (Apple Git-155)