From f493d83fbd3257453e63f2f32ee90a216fd531c1 Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Thu, 9 May 2013 13:53:39 +0100 Subject: [PATCH] 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 --- src/qemu/qemu_driver.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c index 3eb4915f8..ab52693ee 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, -- 2.39.5