mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
lvconvert: disallow usage of origin for snapshot
Usage of origin as a snapshot 'COW' volume is unsupported. Without this test lvm2 is able to generate this ugly internal error message. To test this: lvcreate -L1 -n lv1 vg lvcreate -L1 -n lv2 -s vg/lv1 lvcreate -L1 -n lv3 vg lvconvert -s vg/lv3 vg/lv1 Internal error: LVs (5) != visible LVs (1) + snapshots (1) + internal LVs (0) in VG vg
This commit is contained in:
parent
455f23586f
commit
f3b9ee37e9
@ -1,5 +1,6 @@
|
|||||||
Version 2.02.106 -
|
Version 2.02.106 -
|
||||||
====================================
|
====================================
|
||||||
|
Disallow lvconvert of origin to snapshot COW volume.
|
||||||
Make report settings profilable.
|
Make report settings profilable.
|
||||||
Add existing report settings to lvm.conf.
|
Add existing report settings to lvm.conf.
|
||||||
Use VG read lock during 'pvscan --cache -aay' autoactivation.
|
Use VG read lock during 'pvscan --cache -aay' autoactivation.
|
||||||
|
@ -2038,6 +2038,12 @@ static int _lvconvert_snapshot(struct cmd_context *cmd,
|
|||||||
{
|
{
|
||||||
struct logical_volume *org;
|
struct logical_volume *org;
|
||||||
|
|
||||||
|
if (lv_is_origin(lv)) {
|
||||||
|
/* Unsupported stack */
|
||||||
|
log_error("Unable to convert origin \"%s\" into a snapshot.", lv->name);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (!(org = find_lv(lv->vg, lp->origin))) {
|
if (!(org = find_lv(lv->vg, lp->origin))) {
|
||||||
log_error("Couldn't find origin volume '%s'.", lp->origin);
|
log_error("Couldn't find origin volume '%s'.", lp->origin);
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user