From: Daniel P. Berrange Date: Thu, 9 May 2013 12:53:39 +0000 (+0100) Subject: Cope with missing swap cgroup controls X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=f493d83fbd3257453e63f2f32ee90a216fd531c1;p=libvirt.git Cope with missing swap cgroup controls It is possible to build a kernel without swap cgroup controls present. This causes a fatal error when querying memory parameters. Treat missing swap controls as meaning "unlimited". The fatal error remains if the user tries to actually change the limit. Signed-off-by: Daniel P. Berrange --- diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 3eb4915f83..ab52693ee4 100644 --- a/src/qemu/qemu_driver.c +++ b/src/qemu/qemu_driver.c @@ -7613,9 +7613,12 @@ qemuDomainGetMemoryParameters(virDomainPtr dom, case 2: /* fill swap hard limit here */ rc = virCgroupGetMemSwapHardLimit(priv->cgroup, &val); if (rc != 0) { - virReportSystemError(-rc, "%s", - _("unable to get swap hard limit")); - goto cleanup; + if (rc != -ENOENT) { + virReportSystemError(-rc, "%s", + _("unable to get swap hard limit")); + goto cleanup; + } + val = VIR_DOMAIN_MEMORY_PARAM_UNLIMITED; } if (virTypedParameterAssign(param, VIR_DOMAIN_MEMORY_SWAP_HARD_LIMIT,