Re: [PATCH v5 00/11] simplify block layer based on immutable biovecs

Jeff Moyer
2015-07-16T13:13:53Z

Ming Lin <mlin@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;