bio: move the slab pointer inside the bio_set

In preparation for adding differently sized bios.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
This commit is contained in:
Jens Axboe
2008-10-22 20:32:58 +02:00
parent 7ff9345ffa
commit 1b43449869
2 changed files with 6 additions and 2 deletions

View File

@@ -1404,12 +1404,15 @@ void bioset_free(struct bio_set *bs)
struct bio_set *bioset_create(int bio_pool_size, int bvec_pool_size) struct bio_set *bioset_create(int bio_pool_size, int bvec_pool_size)
{ {
struct bio_set *bs = kzalloc(sizeof(*bs), GFP_KERNEL); struct bio_set *bs;
bs = kzalloc(sizeof(*bs), GFP_KERNEL);
if (!bs) if (!bs)
return NULL; return NULL;
bs->bio_pool = mempool_create_slab_pool(bio_pool_size, bio_slab); bs->bio_slab = bio_slab;
bs->bio_pool = mempool_create_slab_pool(bio_pool_size, bs->bio_slab);
if (!bs->bio_pool) if (!bs->bio_pool)
goto bad; goto bad;

View File

@@ -400,6 +400,7 @@ static inline void bio_set_completion_cpu(struct bio *bio, unsigned int cpu)
#define BIOVEC_MAX_IDX (BIOVEC_NR_POOLS - 1) #define BIOVEC_MAX_IDX (BIOVEC_NR_POOLS - 1)
struct bio_set { struct bio_set {
struct kmem_cache *bio_slab;
mempool_t *bio_pool; mempool_t *bio_pool;
#if defined(CONFIG_BLK_DEV_INTEGRITY) #if defined(CONFIG_BLK_DEV_INTEGRITY)
mempool_t *bio_integrity_pool; mempool_t *bio_integrity_pool;