For more information check the kernel documentation [1]. This series implements cgroup v2 support into libvirt without devices, for that there will be separate series because it uses BPF and it's not that trivial. You can get it from my git as well [2]. [1] <https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/admin-guide/cgroup-v2.rst> [2] <https://github.com/Antique/libvirt/tree/cgroupv2> Pavel Hrdina (53): util: introduce cgroup v2 files vircgroup: introduce virCgroupV2Available vircgroup: introduce virCgroupV2ValidateMachineGroup vircgroup: introduce virCgroupV2CopyMounts vircgroup: introduce virCgroupV2CopyPlacement vircgroup: introduce virCgroupV2DetectMounts vircgroup: introduce virCgroupV2DetectPlacement vircgroup: introduce virCgroupV2ValidatePlacement vircgroup: introduce virCgroupV2StealPlacement vircgroup: introduce virCgroupV2DetectControllers vircgroup: introduce virCgroupV2HasController vircgroup: introduce virCgroupV2GetAnyController vircgroup: introduce virCgroupV2PathOfController vircgroup: introduce virCgroupV2MakeGroup vircgroup: introduce virCgroupV2Remove vircgroup: introduce virCgroupV2AddTask vircgroup: introduce virCgroupV2HasEmptyTasks vircgroup: introduce virCgroupV2BindMount vircgroup: introduce virCgroupV2SetOwner vircgroup: introduce virCgroupV2(Set|Get)BlkioWeight vircgroup: introduce virCgroupV2GetBlkioIoServiced vircgroup: introduce virCgroupV2GetBlkioIoDeviceServiced vircgroup: introduce virCgroupV2(Set|Get)BlkioDeviceWeight vircgroup: introduce virCgroupV2(Set|Get)BlkioDeviceReadIops vircgroup: introduce virCgroupV2(Set|Get)BlkioDeviceWriteIops vircgroup: introduce virCgroupV2(Set|Get)BlkioDeviceReadBps vircgroup: introduce virCgroupV2(Set|Get)BlkioDeviceWriteBps vircgroup: introduce virCgroupV2SetMemory vircgroup: introduce virCgroupV2GetMemoryStat vircgroup: introduce virCgroupV2GetMemoryUsage vircgroup: introduce virCgroupV2(Set|Get)MemoryHardLimit vircgroup: introduce virCgroupV2(Set|Get)MemorySoftLimit vircgroup: introduce virCgroupV2(Set|Get)MemSwapHardLimit vircgroup: introduce virCgroupV2GetMemSwapUsage vircgroup: introduce virCgroupV2(Set|Get)CpuShares vircgroup: introduce virCgroupV2(Set|Get)CpuCfsPeriod vircgroup: introduce virCgroupV2(Set|Get)CpuCfsQuota vircgroup: introduce virCgroupV2SupportsCpuBW vircgroup: introduce virCgroupV2GetCpuacctUsage vircgroup: introduce virCgroupV2GetCpuacctStat vircgroup: register cgroup v2 backend vircgroup: add support for hybrid configuration vircgroupmock: change cgroup prefix vircgroupmock: add support to test cgroup v2 vircgrouptest: introduce initFakeFS and cleanupFakeFS helpers vircgrouptest: prepare testCgroupDetectMounts for cgroup v2 vircgrouptest: add detect mounts test for cgroup v2 vircgrouptest: add detect mounts test for hybrid cgroups vircgrouptest: prepare validateCgroup for cgroupv2 vircgrouptest: add cgroup v2 tests vircgrouptest: add hybrid tests virt-host-validate: rewrite cgroup detection to use util/vircgroup virt-host-validate: require freezer for LXC src/Makefile.am | 1 + src/libvirt_private.syms | 3 + src/util/Makefile.inc.am | 2 + src/util/vircgroup.c | 356 +++-- src/util/vircgroupbackend.c | 23 + src/util/vircgroupbackend.h | 20 +- src/util/vircgrouppriv.h | 11 +- src/util/vircgroupv2.c | 1621 +++++++++++++++++++++ src/util/vircgroupv2.h | 27 + tests/vircgroupdata/all-in-one.parsed | 1 + tests/vircgroupdata/cgroups1.parsed | 1 + tests/vircgroupdata/cgroups2.parsed | 1 + tests/vircgroupdata/cgroups3.parsed | 1 + tests/vircgroupdata/fedora-18.parsed | 1 + tests/vircgroupdata/fedora-21.parsed | 1 + tests/vircgroupdata/hybrid.cgroups | 12 + tests/vircgroupdata/hybrid.mounts | 23 + tests/vircgroupdata/hybrid.parsed | 11 + tests/vircgroupdata/hybrid.self.cgroup | 9 + tests/vircgroupdata/kubevirt.parsed | 1 + tests/vircgroupdata/ovirt-node-6.6.parsed | 1 + tests/vircgroupdata/ovirt-node-7.1.parsed | 1 + tests/vircgroupdata/rhel-7.1.parsed | 1 + tests/vircgroupdata/unified.cgroups | 13 + tests/vircgroupdata/unified.mounts | 20 + tests/vircgroupdata/unified.parsed | 11 + tests/vircgroupdata/unified.self.cgroup | 1 + tests/vircgroupmock.c | 177 ++- tests/vircgrouptest.c | 191 ++- tools/virt-host-validate-common.c | 162 +- tools/virt-host-validate-common.h | 7 +- tools/virt-host-validate-lxc.c | 41 +- tools/virt-host-validate-qemu.c | 40 +- 33 files changed, 2450 insertions(+), 342 deletions(-) create mode 100644 src/util/vircgroupv2.c create mode 100644 src/util/vircgroupv2.h create mode 100644 tests/vircgroupdata/hybrid.cgroups create mode 100644 tests/vircgroupdata/hybrid.mounts create mode 100644 tests/vircgroupdata/hybrid.parsed create mode 100644 tests/vircgroupdata/hybrid.self.cgroup create mode 100644 tests/vircgroupdata/unified.cgroups create mode 100644 tests/vircgroupdata/unified.mounts create mode 100644 tests/vircgroupdata/unified.parsed create mode 100644 tests/vircgroupdata/unified.self.cgroup -- 2.17.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list