summaryrefslogtreecommitdiff
path: root/lib/display
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2014-07-02 00:01:46 +0200
committerZdenek Kabelac <zkabelac@redhat.com>2014-07-02 10:45:42 +0200
commite21d0eb90e9a842ca5fd4d09c076f5fb894ba6ca (patch)
tree5d2460752080c926fd1b1b9ae22e44f4baf8a77f /lib/display
parent6f6900d457afdf8533968f6cd639d4b14779ad51 (diff)
downloadlvm2-e21d0eb90e9a842ca5fd4d09c076f5fb894ba6ca.tar.gz
display: add display_lvname
Add simple function to print vg/lv name. Useful i.e. in error messages.
Diffstat (limited to 'lib/display')
-rw-r--r--lib/display/display.c9
-rw-r--r--lib/display/display.h2
2 files changed, 11 insertions, 0 deletions
diff --git a/lib/display/display.c b/lib/display/display.c
index 9780f10a8..fd785ed90 100644
--- a/lib/display/display.c
+++ b/lib/display/display.c
@@ -93,6 +93,15 @@ const char *get_percent_string(percent_type_t def)
return _percent_types[def];
}
+const char *display_lvname(const struct logical_volume *lv)
+{
+ char buf[NAME_LEN * 2 + 2];
+
+ (void) snprintf(buf, sizeof(buf), "%s/%s", lv->vg->name, lv->name);
+
+ return dm_pool_strdup(lv->vg->cmd->mem, buf) ? : lv->name; /* at least LV name... */
+}
+
#define BASE_UNKNOWN 0
#define BASE_SHARED 1
#define BASE_1024 8
diff --git a/lib/display/display.h b/lib/display/display.h
index d5c0efa2e..cc5654b61 100644
--- a/lib/display/display.h
+++ b/lib/display/display.h
@@ -22,6 +22,8 @@
#include <stdint.h>
+const char *display_lvname(const struct logical_volume *lv);
+
/* Specify size in KB */
const char *display_size(const struct cmd_context *cmd, uint64_t size);
const char *display_size_long(const struct cmd_context *cmd, uint64_t size);