Hello, On Mon, Aug 06, 2012 at 03:08:34PM -0700, Kent Overstreet wrote: > Now that we've got generic code for freeing bios allocated from bio > pools, this isn't needed anymore. > > This also changes the semantics of bio_free() a bit - it now also frees > bios allocated by bio_kmalloc(). It's also no longer exported, as > without bi_destructor there should be no need for it to be called > anywhere else. > > v5: Switch to BIO_KMALLOC_POOL ((void *)~0), per Boaz > > Signed-off-by: Kent Overstreet <koverstreet@xxxxxxxxxx> > --- > diff --git a/drivers/block/drbd/drbd_main.c b/drivers/block/drbd/drbd_main.c > index 920ede2..19bf632 100644 > --- a/drivers/block/drbd/drbd_main.c > +++ b/drivers/block/drbd/drbd_main.c > @@ -161,23 +161,12 @@ static const struct block_device_operations drbd_ops = { > .release = drbd_release, > }; > > -static void bio_destructor_drbd(struct bio *bio) > -{ > - bio_free(bio, drbd_md_io_bio_set); > -} > - > struct bio *bio_alloc_drbd(gfp_t gfp_mask) > { > - struct bio *bio; > - > if (!drbd_md_io_bio_set) > return bio_alloc(gfp_mask, 1); > > - bio = bio_alloc_bioset(gfp_mask, 1, drbd_md_io_bio_set); > - if (!bio) > - return NULL; > - bio->bi_destructor = bio_destructor_drbd; > - return bio; > + return bio_alloc_bioset(gfp_mask, 1, drbd_md_io_bio_set); > } Does this chunk belong to this patch? > @@ -56,6 +56,8 @@ static struct biovec_slab bvec_slabs[BIOVEC_NR_POOLS] __read_mostly = { > */ > struct bio_set *fs_bio_set; > > +#define BIO_KMALLOC_POOL ((void *) ~0) What's wrong with good ol' NULL? Thanks. -- tejun -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel