summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2017-10-23 11:36:51 +0200
committerZdenek Kabelac <zkabelac@redhat.com>2017-10-23 12:01:15 +0200
commitdf3ff32fc012b1e881dd492c1e34a7d1020747b1 (patch)
tree10114e12265a5fbd71d5e5a80a1254657f3d0a3b
parentd6fcab900b5b33c55c7894c3f4a7cdd1dbb81c1a (diff)
downloadlvm2-df3ff32fc012b1e881dd492c1e34a7d1020747b1.tar.gz
lvcreate: skip checking for name restriction for caching
lvcreate supports a 'conversion' when caching LV. This normally worked fine, however in case passed LV was thin-pool's data LV with suffix _tdata we have failed to early. As the easiest fix looks dropping validation of name when caching type is select - such name check will happen later once the VG is opened again and properly detect if the LV with protected name already exists and can be converted, or will be rejected as ambigiuous operation requiring user to specify --type cache | --type cache-pool.
-rw-r--r--WHATS_NEW1
-rw-r--r--tools/lvcreate.c2
2 files changed, 2 insertions, 1 deletions
diff --git a/WHATS_NEW b/WHATS_NEW
index 2f08468be..d91900b15 100644
--- a/WHATS_NEW
+++ b/WHATS_NEW
@@ -1,5 +1,6 @@
Version 2.02.176 -
===================================
+ Allow lvcreate to be used for caching of _tdata LV.
Avoid internal error when resizing cache type _tdata LV (not yet supported).
Show original converted names when lvconverting LV to pool volume.
Move lib code used only by liblvm into metadata-liblvm.c.
diff --git a/tools/lvcreate.c b/tools/lvcreate.c
index 8aa16f24a..ff57baff7 100644
--- a/tools/lvcreate.c
+++ b/tools/lvcreate.c
@@ -1425,7 +1425,7 @@ static int _check_pool_parameters(struct cmd_context *cmd,
if (lp->create_pool) {
/* Given pool name needs to follow restrictions for created LV */
if (lp->pool_name) {
- if (!apply_lvname_restrictions(lp->pool_name))
+ if (!seg_is_cache(lp) && !apply_lvname_restrictions(lp->pool_name))
return_0;
/* We could check existance only when we have vg */
if (vg && find_lv(vg, lp->pool_name)) {