1
0
mirror of git://sourceware.org/git/lvm2.git synced 2025-01-02 01:18:26 +03:00

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.
This commit is contained in:
Zdenek Kabelac 2017-10-23 11:36:51 +02:00
parent d6fcab900b
commit df3ff32fc0
2 changed files with 2 additions and 1 deletions

View File

@ -1,5 +1,6 @@
Version 2.02.176 - 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). Avoid internal error when resizing cache type _tdata LV (not yet supported).
Show original converted names when lvconverting LV to pool volume. Show original converted names when lvconverting LV to pool volume.
Move lib code used only by liblvm into metadata-liblvm.c. Move lib code used only by liblvm into metadata-liblvm.c.

View File

@ -1425,7 +1425,7 @@ static int _check_pool_parameters(struct cmd_context *cmd,
if (lp->create_pool) { if (lp->create_pool) {
/* Given pool name needs to follow restrictions for created LV */ /* Given pool name needs to follow restrictions for created LV */
if (lp->pool_name) { if (lp->pool_name) {
if (!apply_lvname_restrictions(lp->pool_name)) if (!seg_is_cache(lp) && !apply_lvname_restrictions(lp->pool_name))
return_0; return_0;
/* We could check existance only when we have vg */ /* We could check existance only when we have vg */
if (vg && find_lv(vg, lp->pool_name)) { if (vg && find_lv(vg, lp->pool_name)) {