X-Git-Url: https://git.karo-electronics.de/?a=blobdiff_plain;f=mm%2Fbounce.c;h=e590272fe7a8f3e40acb21059bb0082f74354f26;hb=14ed74fbe2b917f0ad3e30cf2644203c04a45e89;hp=bf0cf7c8387b8d92c93dfb18436a7f2cf424cb00;hpb=3c68b4a8071fb11d905570d9b0e23034adc6c2bb;p=mv-sheeva.git diff --git a/mm/bounce.c b/mm/bounce.c index bf0cf7c8387..e590272fe7a 100644 --- a/mm/bounce.c +++ b/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;