X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=fs%2Fbio.c;h=1f2d4649b188015076353340055a4ebdd1e0a6b1;hb=52b7efdbe5f5696fc80338560a3fc51e0b0a993c;hp=ca8f7a850fe30aa27cb6e3b524464197bd76f3c8;hpb=d6ac1a7910d22626bc77e73db091e00b810715f4;p=linux-2.6 diff --git a/fs/bio.c b/fs/bio.c index ca8f7a850f..1f2d4649b1 100644 --- a/fs/bio.c +++ b/fs/bio.c @@ -248,19 +248,16 @@ inline void __bio_clone(struct bio *bio, struct bio *bio_src) { request_queue_t *q = bdev_get_queue(bio_src->bi_bdev); - memcpy(bio->bi_io_vec, bio_src->bi_io_vec, bio_src->bi_max_vecs * sizeof(struct bio_vec)); + memcpy(bio->bi_io_vec, bio_src->bi_io_vec, + bio_src->bi_max_vecs * sizeof(struct bio_vec)); bio->bi_sector = bio_src->bi_sector; bio->bi_bdev = bio_src->bi_bdev; bio->bi_flags |= 1 << BIO_CLONED; bio->bi_rw = bio_src->bi_rw; - - /* - * notes -- maybe just leave bi_idx alone. assume identical mapping - * for the clone - */ bio->bi_vcnt = bio_src->bi_vcnt; bio->bi_size = bio_src->bi_size; + bio->bi_idx = bio_src->bi_idx; bio_phys_segments(q, bio); bio_hw_segments(q, bio); }