[dm-devel] [PATCH v5 00/11] simplify block layer based on immutable biovecs

Jeff Moyer jmoyer at redhat.com
Thu Jul 16 13:13:49 UTC 2015


Ming Lin <mlin at kernel.org> writes:

> On Mon, 2015-07-13 at 11:35 -0400, Mike Snitzer wrote:
>> I will do additional review to answer 1 and 2 above.  And Jeff Moyer
>> told me he'd test the patchset on one of his testbeds.
>
> Hi Jeff,
>
> FYI, here is a fix for patch 1.
> Or you can pull from my tree.
> https://git.kernel.org/cgit/linux/kernel/git/mlin/linux.git/log/?h=block-generic-req

Thanks, Ming.  I'll let you know as soon as I have results worth sharing.

Cheers,
Jeff

>
> diff --git a/block/blk-mq.c b/block/blk-mq.c
> index 40d08e3..181f343 100644
> --- a/block/blk-mq.c
> +++ b/block/blk-mq.c
> @@ -1287,12 +1287,12 @@ static void blk_mq_make_request(struct request_queue *q, struct bio *bio)
>  		return;
>  	}
>  
> +	blk_queue_split(q, &bio, q->bio_split);
> +
>  	if (!is_flush_fua && !blk_queue_nomerges(q) &&
>  	    blk_attempt_plug_merge(q, bio, &request_count, &same_queue_rq))
>  		return;
>  
> -	blk_queue_split(q, &bio, q->bio_split);
> -
>  	rq = blk_mq_map_request(q, bio, &data);
>  	if (unlikely(!rq))
>  		return;
> @@ -1374,12 +1374,12 @@ static void blk_sq_make_request(struct request_queue *q, struct bio *bio)
>  		return;
>  	}
>  
> +	blk_queue_split(q, &bio, q->bio_split);
> +
>  	if (!is_flush_fua && !blk_queue_nomerges(q) &&
>  	    blk_attempt_plug_merge(q, bio, &request_count, NULL))
>  		return;
>  
> -	blk_queue_split(q, &bio, q->bio_split);
> -
>  	rq = blk_mq_map_request(q, bio, &data);
>  	if (unlikely(!rq))
>  		return;




More information about the dm-devel mailing list