Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 360321
b: refs/heads/master
c: 23e5083
h: refs/heads/master
i:
  360319: 0e13771
v: v3
  • Loading branch information
Jun'ichi Nomura authored and Alasdair G Kergon committed Mar 1, 2013
1 parent 2b14f72 commit 647212f
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 22 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 87eb5b21d92a92ac2da3163039d62df88c2b8422
refs/heads/master: 23e5083b4d47e778bf7983329989dab7543def14
31 changes: 10 additions & 21 deletions trunk/drivers/md/dm.c
Original file line number Diff line number Diff line change
Expand Up @@ -205,12 +205,6 @@ struct dm_md_mempools {
static struct kmem_cache *_io_cache;
static struct kmem_cache *_rq_tio_cache;

/*
* Unused now, and needs to be deleted. But since io_pool is overloaded and it's
* still used for _io_cache, I'm leaving this for a later cleanup
*/
static struct kmem_cache *_rq_bio_info_cache;

static int __init local_init(void)
{
int r = -ENOMEM;
Expand All @@ -224,13 +218,9 @@ static int __init local_init(void)
if (!_rq_tio_cache)
goto out_free_io_cache;

_rq_bio_info_cache = KMEM_CACHE(dm_rq_clone_bio_info, 0);
if (!_rq_bio_info_cache)
goto out_free_rq_tio_cache;

r = dm_uevent_init();
if (r)
goto out_free_rq_bio_info_cache;
goto out_free_rq_tio_cache;

_major = major;
r = register_blkdev(_major, _name);
Expand All @@ -244,8 +234,6 @@ static int __init local_init(void)

out_uevent_exit:
dm_uevent_exit();
out_free_rq_bio_info_cache:
kmem_cache_destroy(_rq_bio_info_cache);
out_free_rq_tio_cache:
kmem_cache_destroy(_rq_tio_cache);
out_free_io_cache:
Expand All @@ -256,7 +244,6 @@ static int __init local_init(void)

static void local_exit(void)
{
kmem_cache_destroy(_rq_bio_info_cache);
kmem_cache_destroy(_rq_tio_cache);
kmem_cache_destroy(_io_cache);
unregister_blkdev(_major, _name);
Expand Down Expand Up @@ -1986,7 +1973,7 @@ static void __bind_mempools(struct mapped_device *md, struct dm_table *t)
{
struct dm_md_mempools *p = dm_table_get_md_mempools(t);

if (md->io_pool && md->bs) {
if (md->bs) {
/* The md already has necessary mempools. */
if (dm_table_get_type(t) == DM_TYPE_BIO_BASED) {
/*
Expand Down Expand Up @@ -2780,11 +2767,12 @@ struct dm_md_mempools *dm_alloc_md_mempools(unsigned type, unsigned integrity, u

per_bio_data_size = roundup(per_bio_data_size, __alignof__(struct dm_target_io));

pools->io_pool = (type == DM_TYPE_BIO_BASED) ?
mempool_create_slab_pool(MIN_IOS, _io_cache) :
mempool_create_slab_pool(MIN_IOS, _rq_bio_info_cache);
if (!pools->io_pool)
goto free_pools_and_out;
pools->io_pool = NULL;
if (type == DM_TYPE_BIO_BASED) {
pools->io_pool = mempool_create_slab_pool(MIN_IOS, _io_cache);
if (!pools->io_pool)
goto free_pools_and_out;
}

pools->tio_pool = NULL;
if (type == DM_TYPE_REQUEST_BASED) {
Expand Down Expand Up @@ -2814,7 +2802,8 @@ struct dm_md_mempools *dm_alloc_md_mempools(unsigned type, unsigned integrity, u
mempool_destroy(pools->tio_pool);

free_io_pool_and_out:
mempool_destroy(pools->io_pool);
if (pools->io_pool)
mempool_destroy(pools->io_pool);

free_pools_and_out:
kfree(pools);
Expand Down

0 comments on commit 647212f

Please sign in to comment.