From df3ff32fc012b1e881dd492c1e34a7d1020747b1 Mon Sep 17 00:00:00 2001 From: Zdenek Kabelac Date: Mon, 23 Oct 2017 11:36:51 +0200 Subject: [PATCH] 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. --- WHATS_NEW | 1 + tools/lvcreate.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) 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)) {