Skip to content

Commit

Permalink
bio: move the slab pointer inside the bio_set
Browse files Browse the repository at this point in the history
In preparation for adding differently sized bios.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
  • Loading branch information
Jens Axboe committed Dec 29, 2008
1 parent 7ff9345 commit 1b43449
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 2 deletions.
7 changes: 5 additions & 2 deletions fs/bio.c
Original file line number Diff line number Diff line change
Expand Up @@ -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 *bs = kzalloc(sizeof(*bs), GFP_KERNEL);
struct bio_set *bs;

bs = kzalloc(sizeof(*bs), GFP_KERNEL);
if (!bs)
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)
goto bad;

Expand Down
1 change: 1 addition & 0 deletions include/linux/bio.h
Original file line number Diff line number Diff line change
Expand Up @@ -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)

struct bio_set {
struct kmem_cache *bio_slab;
mempool_t *bio_pool;
#if defined(CONFIG_BLK_DEV_INTEGRITY)
mempool_t *bio_integrity_pool;
Expand Down

0 comments on commit 1b43449

Please sign in to comment.