Messages in this thread Patch in this message | | | Date | Tue, 23 Dec 2008 01:08:27 +0000 (GMT) | From | Hugh Dickins <> | Subject | [PATCH next] bio: zero inlined bio_vec |
| |
bvec_alloc_bs() zeroes its bio_vec, and at least __blk_queue_bounce() relies upon that: therefore bio_alloc_bioset() must zero the inlined bio_vec - without that, lots of nastiness occurs in bounce_end_io and blk_rq_map_sg and other places when booting up my PAE box.
Signed-off-by: Hugh Dickins <hugh@veritas.com> ---
fs/bio.c | 2 ++ 1 file changed, 2 insertions(+)
--- linux-next/fs/bio.c 2008-12-21 20:49:25.000000000 +0000 +++ fixed/fs/bio.c 2008-12-22 21:10:06.000000000 +0000 @@ -324,6 +324,8 @@ struct bio *bio_alloc_bioset(gfp_t gfp_m if (nr_iovecs <= BIO_INLINE_VECS) { idx = 0; bvl = bio->bi_inline_vecs; + memset(bvl, 0, BIO_INLINE_VECS * + sizeof(struct bio_vec)); nr_iovecs = BIO_INLINE_VECS; } else { bvl = bvec_alloc_bs(gfp_mask, nr_iovecs, &idx,
| |