From bcf3b35718527908af17e04d0b76a2f9b7d53913 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Tue, 23 Dec 2008 12:44:19 +0100 Subject: [PATCH] --- yaml --- r: 123310 b: refs/heads/master c: f735b5eeb9fcbb001e0cf2a5296b19c4bbaec55f h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/mm/bounce.c | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index d027b5e25db5..45c3184a5201 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: a0ea8622918019ed76c0b85f5d0247809ba05a7c +refs/heads/master: f735b5eeb9fcbb001e0cf2a5296b19c4bbaec55f diff --git a/trunk/mm/bounce.c b/trunk/mm/bounce.c index bf0cf7c8387b..e590272fe7a8 100644 --- a/trunk/mm/bounce.c +++ b/trunk/mm/bounce.c @@ -198,8 +198,13 @@ static void __blk_queue_bounce(struct request_queue *q, struct bio **bio_orig, /* * irk, bounce it */ - if (!bio) - bio = bio_alloc(GFP_NOIO, (*bio_orig)->bi_vcnt); + if (!bio) { + unsigned int cnt = (*bio_orig)->bi_vcnt; + + bio = bio_alloc(GFP_NOIO, cnt); + memset(bio->bi_io_vec, 0, cnt * sizeof(struct bio_vec)); + } + to = bio->bi_io_vec + i;