[libvirt] [PATCH v2 00/53] implement cgroup v2 support

Pavel Hrdina posted 53 patches 5 years, 5 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/cover.1538742563.git.phrdina@redhat.com
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
[libvirt] [PATCH v2 00/53] implement cgroup v2 support
Posted by Pavel Hrdina 5 years, 5 months ago
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@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list