Re: [PATCH 06/13] block: Add bio_reset()

From: Kent Overstreet
Date: Fri May 18 2012 - 17:48:09 EST


On Fri, May 18, 2012 at 09:16:08AM -0700, Tejun Heo wrote:
> Hello,
>
> On Thu, May 17, 2012 at 10:59:53PM -0400, koverstreet@xxxxxxxxxx wrote:
> > From: Kent Overstreet <koverstreet@xxxxxxxxxx>
> >
> > Reusing bios is something that's been highly frowned upon in the past,
> > but driver code keeps doing it anyways. If it's going to happen anyways,
> > we should provide a generic method.
> >
> > This'll help with getting rid of bi_destructor.
>
> It would be nice to explain a bit why this helps bi_destructor
> removal.

drivers/block/pktcdvd.c was open coding this - it was doing a bio_init()
and then resetting bi_destructor (and other stuff). The generic
bio_reset() means it doesn't have to know about bi_destructor anymore.

>
> > +#define BIO_RESET_OFFSET offsetof(struct bio, bi_max_vecs)
>
> Maybe better named BIO_RESET_BYTES? As offset tends to indicate the
> start of a region.

Yeah, that's a better name.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/