diff options
author | Frederik Deweerdt <frederik.deweerdt@gmail.com> | 2008-04-24 22:10:59 +0100 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2008-04-25 13:27:02 +0100 |
commit | cf13ab8e02d452e2236d0b5fda9972b3b7f503cb (patch) | |
tree | 135509aa2852deebba7b4a81cdafc2a2ee2e358f /drivers/md/dm.c | |
parent | 4fdfe401e9d7e30029972d568c667234c0c1d828 (diff) | |
download | linux-cf13ab8e02d452e2236d0b5fda9972b3b7f503cb.tar.gz linux-cf13ab8e02d452e2236d0b5fda9972b3b7f503cb.tar.bz2 linux-cf13ab8e02d452e2236d0b5fda9972b3b7f503cb.zip |
dm: remove md argument from specific_minor
The small patch below:
- Removes the unused md argument from both specific_minor() and next_free_minor()
- Folds kmalloc + memset(0) into a single kzalloc call in alloc_dev()
This has been compile tested on x86.
Signed-off-by: Frederik Deweerdt <frederik.deweerdt@gmail.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
Diffstat (limited to 'drivers/md/dm.c')
-rw-r--r-- | drivers/md/dm.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 11f4ffedd646..372369b1cc20 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c @@ -924,7 +924,7 @@ static void free_minor(int minor) /* * See if the device with a specific minor # is free. */ -static int specific_minor(struct mapped_device *md, int minor) +static int specific_minor(int minor) { int r, m; @@ -957,7 +957,7 @@ out: return r; } -static int next_free_minor(struct mapped_device *md, int *minor) +static int next_free_minor(int *minor) { int r, m; @@ -968,9 +968,8 @@ static int next_free_minor(struct mapped_device *md, int *minor) spin_lock(&_minor_lock); r = idr_get_new(&_minor_idr, MINOR_ALLOCED, &m); - if (r) { + if (r) goto out; - } if (m >= (1 << MINORBITS)) { idr_remove(&_minor_idr, m); @@ -993,7 +992,7 @@ static struct block_device_operations dm_blk_dops; static struct mapped_device *alloc_dev(int minor) { int r; - struct mapped_device *md = kmalloc(sizeof(*md), GFP_KERNEL); + struct mapped_device *md = kzalloc(sizeof(*md), GFP_KERNEL); void *old_md; if (!md) { @@ -1006,13 +1005,12 @@ static struct mapped_device *alloc_dev(int minor) /* get a minor number for the dev */ if (minor == DM_ANY_MINOR) - r = next_free_minor(md, &minor); + r = next_free_minor(&minor); else - r = specific_minor(md, minor); + r = specific_minor(minor); if (r < 0) goto bad_minor; - memset(md, 0, sizeof(*md)); init_rwsem(&md->io_lock); mutex_init(&md->suspend_lock); spin_lock_init(&md->pushback_lock); |