[libvirt] [PATCH v3 7/7] util: vircgroupv2: mark only requested controllers as available

Peter Krempa pkrempa at redhat.com
Wed Jun 26 08:19:50 UTC 2019


On Tue, Jun 25, 2019 at 13:16:26 +0200, Pavel Hrdina wrote:
> When detecting available controllers on host we can be limited by list
> of controllers from qemu.conf file.
> 
> Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
> ---
> 
> Notes:
>     Introduced in v3
> 
>  src/util/vircgroupv2.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/src/util/vircgroupv2.c b/src/util/vircgroupv2.c
> index 348c12d5c6..fd883f3c7f 100644
> --- a/src/util/vircgroupv2.c
> +++ b/src/util/vircgroupv2.c
> @@ -302,15 +302,15 @@ virCgroupV2DetectControllers(virCgroupPtr group,
>          group->unified.controllers |= 1 << VIR_CGROUP_CONTROLLER_CPUACCT;
>      }
>  
> +    if (controllers >= 0)
> +        group->unified.controllers &= controllers;

The use of 'int' here for 'controllers' makes it super non-obvious and
super sketchy in what's happening here. Especially since you are then
doing bitwise operations with it afterwards.

It's pre-existing though. Still super ugly.

> +
>      for (i = 0; i < VIR_CGROUP_CONTROLLER_LAST; i++)
>          VIR_DEBUG("Controller '%s' present=%s",
>                    virCgroupV2ControllerTypeToString(i),
>                    (group->unified.controllers & 1 << i) ? "yes" : "no");
>  
> -    if (controllers >= 0)
> -        return controllers & group->unified.controllers;
> -    else
> -        return group->unified.controllers;
> +    return group->unified.controllers;
>  }

ACK
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20190626/2cc7d60f/attachment-0001.sig>


More information about the libvir-list mailing list