[dm-devel] Re: [PATCH 01/11] dm io: fix bi_max_vecs
Heinz Mauelshagen
mauelshagen at redhat.com
Thu Nov 23 15:26:38 UTC 2006
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 at redhat.com>
> >
> > 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 at RedHat.com PHONE +49 171 7803392
FAX +49 2626 924446
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
More information about the dm-devel
mailing list