mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
qemu: snapshot: Forbid taking/reverting snapshots in PMSUSPENDED state
Qemu doesn't currently support them and behaves strangely. Just forbid them. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1079162
This commit is contained in:
parent
c71045a9cb
commit
1e833899ce
@ -13401,9 +13401,14 @@ qemuDomainSnapshotCreateXML(virDomainPtr domain,
|
|||||||
case VIR_DOMAIN_SHUTDOWN:
|
case VIR_DOMAIN_SHUTDOWN:
|
||||||
case VIR_DOMAIN_SHUTOFF:
|
case VIR_DOMAIN_SHUTOFF:
|
||||||
case VIR_DOMAIN_CRASHED:
|
case VIR_DOMAIN_CRASHED:
|
||||||
case VIR_DOMAIN_PMSUSPENDED:
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case VIR_DOMAIN_PMSUSPENDED:
|
||||||
|
virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
|
||||||
|
_("qemu doesn't support taking snapshots of "
|
||||||
|
"PMSUSPENDED guests"));
|
||||||
|
goto cleanup;
|
||||||
|
|
||||||
/* invalid states */
|
/* invalid states */
|
||||||
case VIR_DOMAIN_NOSTATE:
|
case VIR_DOMAIN_NOSTATE:
|
||||||
case VIR_DOMAIN_BLOCKED: /* invalid state, unused in qemu */
|
case VIR_DOMAIN_BLOCKED: /* invalid state, unused in qemu */
|
||||||
@ -14178,8 +14183,6 @@ static int qemuDomainRevertToSnapshot(virDomainSnapshotPtr snapshot,
|
|||||||
case VIR_DOMAIN_SHUTDOWN:
|
case VIR_DOMAIN_SHUTDOWN:
|
||||||
case VIR_DOMAIN_SHUTOFF:
|
case VIR_DOMAIN_SHUTOFF:
|
||||||
case VIR_DOMAIN_CRASHED:
|
case VIR_DOMAIN_CRASHED:
|
||||||
/* XXX: The following one is clearly wrong! */
|
|
||||||
case VIR_DOMAIN_PMSUSPENDED:
|
|
||||||
/* Transitions 1, 4, 7 */
|
/* Transitions 1, 4, 7 */
|
||||||
/* Newer qemu -loadvm refuses to revert to the state of a snapshot
|
/* Newer qemu -loadvm refuses to revert to the state of a snapshot
|
||||||
* created by qemu-img snapshot -c. If the domain is running, we
|
* created by qemu-img snapshot -c. If the domain is running, we
|
||||||
@ -14245,6 +14248,12 @@ static int qemuDomainRevertToSnapshot(virDomainSnapshotPtr snapshot,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case VIR_DOMAIN_PMSUSPENDED:
|
||||||
|
virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
|
||||||
|
_("qemu doesn't support reversion of snapshot taken in "
|
||||||
|
"PMSUSPENDED state"));
|
||||||
|
goto cleanup;
|
||||||
|
|
||||||
case VIR_DOMAIN_NOSTATE:
|
case VIR_DOMAIN_NOSTATE:
|
||||||
case VIR_DOMAIN_BLOCKED:
|
case VIR_DOMAIN_BLOCKED:
|
||||||
case VIR_DOMAIN_LAST:
|
case VIR_DOMAIN_LAST:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user