[libvirt] [PATCH v5 2/2] qemuDomainRevertToSnapshot: save domain configuration
Cole Robinson
crobinso at redhat.com
Tue Mar 15 19:20:03 UTC 2016
On 03/12/2016 10:39 AM, Dmitry Andreev wrote:
> Reverting to a snapshot may change domain configuration. New
> configuration should be saved if domain has persistent flag.
>
> VIR_DOMAIN_EVENT_DEFINED_FROM_SNAPSHOT is emitted in case of
> configuration update.
> ---
> src/qemu/qemu_driver.c | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
> index a0d6596..edf39d9 100644
> --- a/src/qemu/qemu_driver.c
> +++ b/src/qemu/qemu_driver.c
> @@ -15546,6 +15546,15 @@ qemuDomainRevertToSnapshot(virDomainSnapshotPtr snapshot,
> } else if (snap) {
> snap->def->current = false;
> }
> + if (ret == 0 && config && vm->persistent &&
> + !(ret = virDomainSaveConfig(cfg->configDir, driver->caps,
> + vm->newDef ? vm->newDef : vm->def))) {
> + detail = VIR_DOMAIN_EVENT_DEFINED_FROM_SNAPSHOT;
> + qemuDomainEventQueue(driver,
> + virDomainEventLifecycleNewFromObj(vm,
> + VIR_DOMAIN_EVENT_DEFINED,
> + detail));
> + }
> if (event) {
> qemuDomainEventQueue(driver, event);
> qemuDomainEventQueue(driver, event2);
>
I was a bit confused by this at first, since you are conditionalizing on
'config' and I thought we only AssignDef'd it for certain code paths... but
indeed if config is present we always assign it to some part of the VM. I
tested briefly with virt-manager too and this seems to fix things.
ACK and pushed. Thanks!
- Cole
More information about the libvir-list
mailing list