On 10/02/2018 10:43 AM, Pavel Hrdina wrote: > Signed-off-by: Pavel Hrdina <phrdina@xxxxxxxxxx> > --- > 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 libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list