bio: allow individual slabs in the bio_set
authorJens Axboe <jens.axboe@oracle.com>
Wed, 10 Dec 2008 14:35:05 +0000 (15:35 +0100)
committerJens Axboe <jens.axboe@oracle.com>
Mon, 29 Dec 2008 07:29:23 +0000 (08:29 +0100)
commitbb799ca0202a360fa74d5f17039b9100caebdde7
tree048b6cedfd2644edd82a606db6d9e8b19d31328b
parent1b4344986926da324b5cd10b683e5a1a5e1b7db3
bio: allow individual slabs in the bio_set

Instead of having a global bio slab cache, add a reference to one
in each bio_set that is created. This allows for personalized slabs
in each bio_set, so that they can have bios of different sizes.

This means we can personalize the bios we return. File systems may
want to embed the bio inside another structure, to avoid allocation
more items (and stuffing them in ->bi_private) after the get a bio.
Or we may want to embed a number of bio_vecs directly at the end
of a bio, to avoid doing two allocations to return a bio. This is now
possible.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
drivers/md/dm-crypt.c
drivers/md/dm-io.c
drivers/md/dm.c
fs/bio-integrity.c
fs/bio.c
include/linux/bio.h