On Sun, 2017-08-27 at 00:33 +0800, Ming Lei wrote: > -bool blk_mq_sched_try_merge(struct request_queue *q, struct bio *bio, > - struct request **merged_request) > +static bool __blk_mq_try_merge(struct request_queue *q, > + struct bio *bio, struct request **merged_request, > + struct request *candidate, enum elv_merge type) > { > - struct request *rq; > + struct request *rq = candidate; It seems weird to me that the argument 'candidate' is not used other than to copy its value into the local variable 'rq'? How about removing that local variable and renaming the 'candidate' argument into 'rq'? Anyway, with or without that change: Reviewed-by: Bart Van Assche <bart.vanassche@xxxxxxx>