From: Guannan Ren Date: Tue, 5 Mar 2013 16:24:57 +0000 (+0800) Subject: qemu: update domain live xml for virsh memtune with --live flag X-Git-Tag: v1.0.4-rc1~157 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0047d5d6e86cf84e71b2503c3939fc97c3ffe8b9;p=thirdparty%2Flibvirt.git qemu: update domain live xml for virsh memtune with --live flag virsh subcommand memtune forgot updating domain live xml after setting cgroup value. --- diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 42b8c77b21..32b05229fc 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -7303,11 +7303,13 @@ qemuDomainSetMemoryParameters(virDomainPtr dom, } if (set_swap_hard_limit) { - if (flags & VIR_DOMAIN_AFFECT_LIVE && - (rc = virCgroupSetMemSwapHardLimit(group, swap_hard_limit)) < 0) { - virReportSystemError(-rc, "%s", - _("unable to set memory swap_hard_limit tunable")); - goto cleanup; + if (flags & VIR_DOMAIN_AFFECT_LIVE) { + if ((rc = virCgroupSetMemSwapHardLimit(group, swap_hard_limit)) < 0) { + virReportSystemError(-rc, "%s", + _("unable to set memory swap_hard_limit tunable")); + goto cleanup; + } + vm->def->mem.swap_hard_limit = swap_hard_limit; } if (flags & VIR_DOMAIN_AFFECT_CONFIG) @@ -7315,11 +7317,13 @@ qemuDomainSetMemoryParameters(virDomainPtr dom, } if (set_memory_hard_limit) { - if (flags & VIR_DOMAIN_AFFECT_LIVE && - (rc = virCgroupSetMemoryHardLimit(group, memory_hard_limit)) < 0) { - virReportSystemError(-rc, "%s", - _("unable to set memory hard_limit tunable")); - goto cleanup; + if (flags & VIR_DOMAIN_AFFECT_LIVE) { + if ((rc = virCgroupSetMemoryHardLimit(group, memory_hard_limit)) < 0) { + virReportSystemError(-rc, "%s", + _("unable to set memory hard_limit tunable")); + goto cleanup; + } + vm->def->mem.hard_limit = memory_hard_limit; } if (flags & VIR_DOMAIN_AFFECT_CONFIG) @@ -7327,11 +7331,13 @@ qemuDomainSetMemoryParameters(virDomainPtr dom, } if (set_memory_soft_limit) { - if (flags & VIR_DOMAIN_AFFECT_LIVE && - (rc = virCgroupSetMemorySoftLimit(group, memory_soft_limit)) < 0) { - virReportSystemError(-rc, "%s", - _("unable to set memory soft_limit tunable")); - goto cleanup; + if (flags & VIR_DOMAIN_AFFECT_LIVE) { + if ((rc = virCgroupSetMemorySoftLimit(group, memory_soft_limit)) < 0) { + virReportSystemError(-rc, "%s", + _("unable to set memory soft_limit tunable")); + goto cleanup; + } + vm->def->mem.soft_limit = memory_soft_limit; } if (flags & VIR_DOMAIN_AFFECT_CONFIG)