dm: tidy local_init

This patch tidies local_init() in preparation for request-based dm.
No functional change.

Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
This commit is contained in:
Kiyoshi Ueda 2008-10-21 17:45:08 +01:00 committed by Alasdair G Kergon
parent f431d9666f
commit 51157b4ab4
1 changed files with 17 additions and 17 deletions

View File

@ -150,40 +150,40 @@ static struct kmem_cache *_tio_cache;
static int __init local_init(void) static int __init local_init(void)
{ {
int r; int r = -ENOMEM;
/* allocate a slab for the dm_ios */ /* allocate a slab for the dm_ios */
_io_cache = KMEM_CACHE(dm_io, 0); _io_cache = KMEM_CACHE(dm_io, 0);
if (!_io_cache) if (!_io_cache)
return -ENOMEM; return r;
/* allocate a slab for the target ios */ /* allocate a slab for the target ios */
_tio_cache = KMEM_CACHE(dm_target_io, 0); _tio_cache = KMEM_CACHE(dm_target_io, 0);
if (!_tio_cache) { if (!_tio_cache)
kmem_cache_destroy(_io_cache); goto out_free_io_cache;
return -ENOMEM;
}
r = dm_uevent_init(); r = dm_uevent_init();
if (r) { if (r)
kmem_cache_destroy(_tio_cache); goto out_free_tio_cache;
kmem_cache_destroy(_io_cache);
return r;
}
_major = major; _major = major;
r = register_blkdev(_major, _name); r = register_blkdev(_major, _name);
if (r < 0) { if (r < 0)
kmem_cache_destroy(_tio_cache); goto out_uevent_exit;
kmem_cache_destroy(_io_cache);
dm_uevent_exit();
return r;
}
if (!_major) if (!_major)
_major = r; _major = r;
return 0; return 0;
out_uevent_exit:
dm_uevent_exit();
out_free_tio_cache:
kmem_cache_destroy(_tio_cache);
out_free_io_cache:
kmem_cache_destroy(_io_cache);
return r;
} }
static void local_exit(void) static void local_exit(void)