summaryrefslogtreecommitdiffstats
path: root/drivers/md/dm-cache-policy.c
diff options
context:
space:
mode:
authorMike Snitzer <snitzer@redhat.com>2014-01-16 03:06:55 +0100
committerMike Snitzer <snitzer@redhat.com>2014-01-16 19:44:11 +0100
commit2e68c4e6caad9fdadc1cef8b6cb9569192e8a42b (patch)
treefdc0a4f6b3eaba7979b613b9423ec4ef23a64ca5 /drivers/md/dm-cache-policy.c
parentdm thin: fix pool feature parsing (diff)
downloadlinux-2e68c4e6caad9fdadc1cef8b6cb9569192e8a42b.tar.xz
linux-2e68c4e6caad9fdadc1cef8b6cb9569192e8a42b.zip
dm cache: add policy name to status output
The cache's policy may have been established using the "default" alias, which is currently the "mq" policy but the default policy may change in the future. It is useful to know exactly which policy is being used. Add a 'real' member to the dm_cache_policy_type structure and have the "default" dm_cache_policy_type point to the real "mq" dm_cache_policy_type. Update dm_cache_policy_get_name() to check if real is set, if so report the name of the real policy (not the alias). Requested-by: Jonathan Brassow <jbrassow@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Diffstat (limited to 'drivers/md/dm-cache-policy.c')
-rw-r--r--drivers/md/dm-cache-policy.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/md/dm-cache-policy.c b/drivers/md/dm-cache-policy.c
index d80057968407..c1a3cee99b44 100644
--- a/drivers/md/dm-cache-policy.c
+++ b/drivers/md/dm-cache-policy.c
@@ -146,6 +146,10 @@ const char *dm_cache_policy_get_name(struct dm_cache_policy *p)
{
struct dm_cache_policy_type *t = p->private;
+ /* if t->real is set then an alias was used (e.g. "default") */
+ if (t->real)
+ return t->real->name;
+
return t->name;
}
EXPORT_SYMBOL_GPL(dm_cache_policy_get_name);