Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

blk-mq: remove the bio argument to ->prepare_request

None of the I/O schedulers actually needs it.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Reviewed-by: Bart Van Assche <bvanassche@acm.org>
Reviewed-by: Daniel Wagner <dwagner@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>

authored by

Christoph Hellwig and committed by
Jens Axboe
5d9c305b 3382a567

+5 -5
+1 -1
block/bfq-iosched.c
··· 6073 6073 * comments on bfq_init_rq for the reason behind this delayed 6074 6074 * preparation. 6075 6075 */ 6076 - static void bfq_prepare_request(struct request *rq, struct bio *bio) 6076 + static void bfq_prepare_request(struct request *rq) 6077 6077 { 6078 6078 /* 6079 6079 * Regardless of whether we have an icq attached, we have to
+1 -1
block/blk-mq.c
··· 387 387 if (e->type->icq_cache) 388 388 blk_mq_sched_assign_ioc(rq); 389 389 390 - e->type->ops.prepare_request(rq, bio); 390 + e->type->ops.prepare_request(rq); 391 391 rq->rq_flags |= RQF_ELVPRIV; 392 392 } 393 393 }
+1 -1
block/kyber-iosched.c
··· 579 579 return merged; 580 580 } 581 581 582 - static void kyber_prepare_request(struct request *rq, struct bio *bio) 582 + static void kyber_prepare_request(struct request *rq) 583 583 { 584 584 rq_set_domain_token(rq, -1); 585 585 }
+1 -1
block/mq-deadline.c
··· 541 541 * Nothing to do here. This is defined only to ensure that .finish_request 542 542 * method is called upon request completion. 543 543 */ 544 - static void dd_prepare_request(struct request *rq, struct bio *bio) 544 + static void dd_prepare_request(struct request *rq) 545 545 { 546 546 } 547 547
+1 -1
include/linux/elevator.h
··· 39 39 void (*request_merged)(struct request_queue *, struct request *, enum elv_merge); 40 40 void (*requests_merged)(struct request_queue *, struct request *, struct request *); 41 41 void (*limit_depth)(unsigned int, struct blk_mq_alloc_data *); 42 - void (*prepare_request)(struct request *, struct bio *bio); 42 + void (*prepare_request)(struct request *); 43 43 void (*finish_request)(struct request *); 44 44 void (*insert_requests)(struct blk_mq_hw_ctx *, struct list_head *, bool); 45 45 struct request *(*dispatch_request)(struct blk_mq_hw_ctx *);