Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

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

[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
Loading
Loading
Loading
Loading
+14 −5
Original line number Diff line number Diff line
@@ -902,10 +902,9 @@ int dm_create_with_minor(unsigned int minor, struct mapped_device **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;
	void *mdptr = NULL;
	unsigned minor = MINOR(dev);

	if (MAJOR(dev) != _major || minor >= (1 << MINORBITS))
@@ -914,12 +913,22 @@ void *dm_get_mdptr(dev_t dev)
	down(&_minor_lock);

	md = idr_find(&_minor_idr, minor);

	if (md && (dm_disk(md)->first_minor == minor))
		mdptr = md->interface_ptr;
	if (!md || (dm_disk(md)->first_minor != minor))
		md = NULL;

	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;
}