[PATCH v2 00/14] vircgroup code duplication purge

Daniel Henrique Barboza posted 14 patches 4 years, 2 months ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20200217212921.251616-1-danielhb413@gmail.com
po/POTFILES.in                 |   2 +
src/Makefile.am                |   1 +
src/hypervisor/Makefile.inc.am |  16 ++
src/hypervisor/domain_cgroup.c | 268 ++++++++++++++++++++
src/hypervisor/domain_cgroup.h |  38 +++
src/hypervisor/domain_driver.c | 252 +++++++++++++++++++
src/hypervisor/domain_driver.h |  36 +++
src/libvirt_private.syms       |  32 ++-
src/lxc/Makefile.inc.am        |   2 +
src/lxc/lxc_cgroup.c           |  91 +------
src/lxc/lxc_driver.c           | 430 ++-------------------------------
src/qemu/Makefile.inc.am       |   1 +
src/qemu/qemu_cgroup.c         | 112 +--------
src/qemu/qemu_driver.c         | 401 +-----------------------------
src/util/vircgroup.c           | 212 ++++++++++++++--
src/util/vircgroup.h           |  53 ++--
16 files changed, 894 insertions(+), 1053 deletions(-)
create mode 100644 src/hypervisor/Makefile.inc.am
create mode 100644 src/hypervisor/domain_cgroup.c
create mode 100644 src/hypervisor/domain_cgroup.h
create mode 100644 src/hypervisor/domain_driver.c
create mode 100644 src/hypervisor/domain_driver.h
[PATCH v2 00/14] vircgroup code duplication purge
Posted by Daniel Henrique Barboza 4 years, 2 months ago
Based on the feedback from version 1 [1], we can't put cross
directory dependencies in the utils files, but ATM we have no
good spot to put common driver code as well.

The solution then was to add a new directory structure, as proposed in
[2], to put the common cgroup and driver code between LXC and QEMU
into. 


changes from v1:
- introduced src/hypervisor/domain_cgroup.c/h. Cgroup duplicated
code that depends on /conf includes now goes to this file
- introduced src/hypervisor/domain_driver.c/h. Common driver
code now goes to this file instead of putting more stuff in
domain_conf.c


[1] https://www.redhat.com/archives/libvir-list/2020-February/msg00425.html
[2] https://www.redhat.com/archives/libvir-list/2019-December/msg00817.html

Daniel Henrique Barboza (14):
  vircgroup.c: adding virCgroupSetupBlkioDevice* helpers
  lxc,qemu: use virCgroupSetupBlkioDevice* helpers
  vircgroup.c: turn virCgroup{Get/Set}BlkioDevice* into static
  src: introducing hypervisor/domain_cgroup.c
  domain_cgroup.c: add virDomainCgroupSetupMemtune()
  vircgroup.c: add virCgroupSetupCpusetCpus()
  vircgroup.c: add virCgroupSetupCpuShares()
  vircgroup.c: add virCgroupSetupCpuPeriodQuota()
  src/hypervisor: introduce domain_driver.c
  domain_driver.c: add virDomainDriverParseBlkioDeviceStr()
  domain_cgroup.c: add virDomainCgroupSetupDomainBlkioParameters()
  domain_driver.c: add virDomainDriverSetupPersistentDefBlkioParams()
  domain_cgroup.c: add virDomainCgroupSetMemoryLimitParameters()
  vircgroup: add virCgroupGetCpuPeriodQuota()

 po/POTFILES.in                 |   2 +
 src/Makefile.am                |   1 +
 src/hypervisor/Makefile.inc.am |  16 ++
 src/hypervisor/domain_cgroup.c | 268 ++++++++++++++++++++
 src/hypervisor/domain_cgroup.h |  38 +++
 src/hypervisor/domain_driver.c | 252 +++++++++++++++++++
 src/hypervisor/domain_driver.h |  36 +++
 src/libvirt_private.syms       |  32 ++-
 src/lxc/Makefile.inc.am        |   2 +
 src/lxc/lxc_cgroup.c           |  91 +------
 src/lxc/lxc_driver.c           | 430 ++-------------------------------
 src/qemu/Makefile.inc.am       |   1 +
 src/qemu/qemu_cgroup.c         | 112 +--------
 src/qemu/qemu_driver.c         | 401 +-----------------------------
 src/util/vircgroup.c           | 212 ++++++++++++++--
 src/util/vircgroup.h           |  53 ++--
 16 files changed, 894 insertions(+), 1053 deletions(-)
 create mode 100644 src/hypervisor/Makefile.inc.am
 create mode 100644 src/hypervisor/domain_cgroup.c
 create mode 100644 src/hypervisor/domain_cgroup.h
 create mode 100644 src/hypervisor/domain_driver.c
 create mode 100644 src/hypervisor/domain_driver.h

-- 
2.24.1


Re: [PATCH v2 00/14] vircgroup code duplication purge
Posted by Ján Tomko 4 years, 2 months ago
On Mon, Feb 17, 2020 at 04:29:07PM -0500, Daniel Henrique Barboza wrote:
>Based on the feedback from version 1 [1], we can't put cross
>directory dependencies in the utils files, but ATM we have no
>good spot to put common driver code as well.
>
>The solution then was to add a new directory structure, as proposed in
>[2], to put the common cgroup and driver code between LXC and QEMU
>into.
>
>
>changes from v1:
>- introduced src/hypervisor/domain_cgroup.c/h. Cgroup duplicated
>code that depends on /conf includes now goes to this file
>- introduced src/hypervisor/domain_driver.c/h. Common driver
>code now goes to this file instead of putting more stuff in
>domain_conf.c
>
>
>[1] https://www.redhat.com/archives/libvir-list/2020-February/msg00425.html
>[2] https://www.redhat.com/archives/libvir-list/2019-December/msg00817.html
>
>Daniel Henrique Barboza (14):

[...]

> 16 files changed, 894 insertions(+), 1053 deletions(-)

Thank you. Pushed now.

Jano