mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
qemu: snapshot: Reject revertion from clearly bad states
Report errors on some states snapshots done by qemu should never reach
This commit is contained in:
parent
aa7e76a579
commit
49a3a649a8
@ -14158,11 +14158,8 @@ 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:
|
||||||
case VIR_DOMAIN_NOSTATE:
|
|
||||||
case VIR_DOMAIN_BLOCKED:
|
|
||||||
/* XXX: The following one is clearly wrong! */
|
/* XXX: The following one is clearly wrong! */
|
||||||
case VIR_DOMAIN_PMSUSPENDED:
|
case VIR_DOMAIN_PMSUSPENDED:
|
||||||
case VIR_DOMAIN_LAST:
|
|
||||||
/* 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
|
||||||
@ -14227,6 +14224,15 @@ static int qemuDomainRevertToSnapshot(virDomainSnapshotPtr snapshot,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case VIR_DOMAIN_NOSTATE:
|
||||||
|
case VIR_DOMAIN_BLOCKED:
|
||||||
|
case VIR_DOMAIN_LAST:
|
||||||
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
|
_("Invalid target domain state '%s'. Refusing "
|
||||||
|
"snapshot reversion"),
|
||||||
|
virDomainStateTypeToString(snap->def->state));
|
||||||
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user