Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
[sfrench/cifs-2.6.git] / drivers / md / dm.c
index d487d9deb98e1c04ddb4bc152e2a47d880c3332d..930b9fc27953766e94b2ce8869f6228feb5f04b3 100644 (file)
@@ -399,6 +399,11 @@ struct clone_info {
        unsigned short idx;
 };
 
+static void dm_bio_destructor(struct bio *bio)
+{
+       bio_free(bio, dm_set);
+}
+
 /*
  * Creates a little bio that is just does part of a bvec.
  */
@@ -410,6 +415,7 @@ static struct bio *split_bvec(struct bio *bio, sector_t sector,
        struct bio_vec *bv = bio->bi_io_vec + idx;
 
        clone = bio_alloc_bioset(GFP_NOIO, 1, dm_set);
+       clone->bi_destructor = dm_bio_destructor;
        *clone->bi_io_vec = *bv;
 
        clone->bi_sector = sector;