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:
7
fs/bio.c
7
fs/bio.c
@@ -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;
|
||||||
|
|
||||||
|
@@ -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;
|
||||||
|
Reference in New Issue
Block a user