On Thu, Nov 23, 2006 at 10:19:57AM +0100, Jens Axboe wrote: > On Wed, Nov 22 2006, Alasdair G Kergon wrote: > > From: Heinz Mauelshagen <hjm@xxxxxxxxxx> > > > > The existing code allocates an extra slot in bi_io_vec[] and uses it to > > store the region number. > > > > This patch hides the extra slot from bio_add_page() so the region number > > can't get overwritten. > > > > Also remove a hard-coded SECTOR_SHIFT and fix a typo in a comment. > > > > Index: linux-2.6.19-rc6/drivers/md/dm-io.c > > =================================================================== > > --- linux-2.6.19-rc6.orig/drivers/md/dm-io.c 2006-11-22 17:26:47.000000000 +0000 > > +++ linux-2.6.19-rc6/drivers/md/dm-io.c 2006-11-22 17:26:53.000000000 +0000 > > @@ -92,12 +92,12 @@ void dm_io_put(unsigned int num_pages) > > *---------------------------------------------------------------*/ > > static inline void bio_set_region(struct bio *bio, unsigned region) > > { > > - bio->bi_io_vec[bio->bi_max_vecs - 1].bv_len = region; > > + bio->bi_io_vec[bio->bi_max_vecs].bv_len = region; > > } > > > > Ehm eww, that is really ugly code imo. Got an idea to squirrel the region more beautiful ? Heinz > > -- > Jens Axboe =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Heinz Mauelshagen Red Hat GmbH Consulting Development Engineer Am Sonnenhang 11 Storage Development 56242 Marienrachdorf Germany Mauelshagen@xxxxxxxxxx PHONE +49 171 7803392 FAX +49 2626 924446 =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel