[libvirt] [PATCH] Cope with missing swap cgroup controls

Michal Privoznik mprivozn at redhat.com
Thu May 9 14:34:54 UTC 2013


On 09.05.2013 14:55, Daniel P. Berrange wrote:
> From: "Daniel P. Berrange" <berrange at redhat.com>
> 
> 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 <berrange at redhat.com>
> ---
>  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 6a23573..693b637 100644
> --- a/src/qemu/qemu_driver.c
> +++ b/src/qemu/qemu_driver.c
> @@ -7612,9 +7612,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,
> 

ACK

Michal




More information about the libvir-list mailing list