[libvirt] [PATCH v5 2/2] qemuDomainRevertToSnapshot: save domain configuration

Dmitry Andreev dandreev at virtuozzo.com
Wed Mar 16 08:30:15 UTC 2016


Макс, можно тебя попросить вмержить этот патч?

commit c5e81090eaf40d5735402f94a7446ced3e78a7df
commit 8047d45704a3af77a2c4b88f48e3c98d853813b8

А прошлую версию удалить.

commit fbd032c5e92b799052c487710b1ce6d8d65269a8
commit d040dafb362ddec8c090d52cbcd2a8f745bfa916

Три месяца с первой версии :О

On 15.03.2016 22:20, Cole Robinson wrote:
> 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