Commit 637842cf authored by David Teigland's avatar David Teigland Committed by Linus Torvalds

[PATCH] device-mapper: add dm_find_md

Abstract dm_find_md() from dm_get_mdptr() to allow use elsewhere.
Signed-off-by: default avatarAlasdair G Kergon <agk@redhat.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 9f708e40
...@@ -902,10 +902,9 @@ int dm_create_with_minor(unsigned int minor, struct mapped_device **result) ...@@ -902,10 +902,9 @@ int dm_create_with_minor(unsigned int minor, struct mapped_device **result)
return create_aux(minor, 1, result); return create_aux(minor, 1, result);
} }
void *dm_get_mdptr(dev_t dev) static struct mapped_device *dm_find_md(dev_t dev)
{ {
struct mapped_device *md; struct mapped_device *md;
void *mdptr = NULL;
unsigned minor = MINOR(dev); unsigned minor = MINOR(dev);
if (MAJOR(dev) != _major || minor >= (1 << MINORBITS)) if (MAJOR(dev) != _major || minor >= (1 << MINORBITS))
...@@ -914,12 +913,22 @@ void *dm_get_mdptr(dev_t dev) ...@@ -914,12 +913,22 @@ void *dm_get_mdptr(dev_t dev)
down(&_minor_lock); down(&_minor_lock);
md = idr_find(&_minor_idr, minor); md = idr_find(&_minor_idr, minor);
if (!md || (dm_disk(md)->first_minor != minor))
if (md && (dm_disk(md)->first_minor == minor)) md = NULL;
mdptr = md->interface_ptr;
up(&_minor_lock); up(&_minor_lock);
return md;
}
void *dm_get_mdptr(dev_t dev)
{
struct mapped_device *md;
void *mdptr = NULL;
md = dm_find_md(dev);
if (md)
mdptr = md->interface_ptr;
return mdptr; return mdptr;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment