On 10/02/2018 10:43 AM, Pavel Hrdina wrote:
> Signed-off-by: Pavel Hrdina <[email protected]>
> ---
> src/util/vircgroupv2.c | 16 ++++++++++++++++
> 1 file changed, 16 insertions(+)
>
> diff --git a/src/util/vircgroupv2.c b/src/util/vircgroupv2.c
> index 11d9876d36..eaf07397d5 100644
> --- a/src/util/vircgroupv2.c
> +++ b/src/util/vircgroupv2.c
> @@ -167,6 +167,21 @@ virCgroupV2CopyPlacement(virCgroupPtr group,
> }
>
>
> +static int
> +virCgroupV2DetectMounts(virCgroupPtr group,
> + const char *mntType,
> + const char *mntOpts ATTRIBUTE_UNUSED,
> + const char *mntDir)
> +{
> + if (STRNEQ(mntType, "cgroup2"))
> + return 0;
> +
> + VIR_FREE(group->unified.mountPoint);
> +
> + return VIR_STRDUP(group->unified.mountPoint, mntDir);
Looking at virCgroupDetectMounts() maybe we could have a new return
value to stop going through mount table once we've found what we were
looking for? E.g. -1 = an error, 0 not found but continue, 1 found and
break the loop.
Because the way this is written now - this will always pick up the last
cgroup2 mount. I don't think that is a problem right now. Also, probably
if you have more than one mount of cgroup2 then you're in a bigger
trouble anyway. If you decide to work my suggestion in, then it can be
saved as a follow up patch.
> +}
> +
> +
> virCgroupBackend virCgroupV2Backend = {
> .type = VIR_CGROUP_BACKEND_TYPE_V2,
>
> @@ -174,6 +189,7 @@ virCgroupBackend virCgroupV2Backend = {
> .validateMachineGroup = virCgroupV2ValidateMachineGroup,
> .copyMounts = virCgroupV2CopyMounts,
> .copyPlacement = virCgroupV2CopyPlacement,
> + .detectMounts = virCgroupV2DetectMounts,
> };
>
>
>
ACK
Michal
--
libvir-list mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libvir-list