[libvirt PATCH v3 00/13] cgroup and thread management in ch driver.

Praveen K Paladugu posted 13 patches 2 years, 4 months ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20211210203448.1579606-1-prapal@linux.microsoft.com
There is a newer version of this series
src/ch/ch_conf.c               |   2 +
src/ch/ch_conf.h               |   6 +-
src/ch/ch_domain.c             | 172 ++++++-
src/ch/ch_domain.h             |  32 +-
src/ch/ch_driver.c             | 789 +++++++++++++++++++++++++++++++++
src/ch/ch_monitor.c            | 341 +++++++++++---
src/ch/ch_monitor.h            |  60 ++-
src/ch/ch_process.c            | 385 +++++++++++++++-
src/ch/ch_process.h            |   3 +
src/ch/meson.build             |   1 +
src/hypervisor/domain_cgroup.c | 426 +++++++++++++++++-
src/hypervisor/domain_cgroup.h |  52 +++
src/libvirt_private.syms       |  15 +
src/qemu/qemu_cgroup.c         | 410 +----------------
src/qemu/qemu_cgroup.h         |  11 -
src/qemu/qemu_driver.c         | 130 +-----
src/qemu/qemu_hotplug.c        |   7 +-
src/qemu/qemu_process.c        |  20 +-
src/util/virprocess.c          | 108 +++++
src/util/virprocess.h          |   5 +
20 files changed, 2357 insertions(+), 618 deletions(-)
[libvirt PATCH v3 00/13] cgroup and thread management in ch driver.
Posted by Praveen K Paladugu 2 years, 4 months ago
This patchset adds support for cgroup management of ch threads. This version
correctly manages cgroups for vcpu and emulator threads created by ch. cgroup
management for iothreads is not yet supported.

Along with cgroup management, this patchset also enables support for pinning
vcpu and emulator threads to selected host cpus.

v3:
* addrressed all the formatting comments in v2 patch set
* dropped indentation patches are they do not adhere to libvirt coding style
* fixed build issue in qemu driver that was introduced in v2

Praveen K Paladugu (5):
  util: Helper functions to get process info
  ch_driver,ch_domain: vcpu info getter callbacks
  qemu,hypervisor: refactor some cgroup mgmt methods
  ch_process: Setup emulator and iothread settings
  ch_driver: emulator threadinfo & pinning callbacks

Vineeth Pillai (8):
  ch_domain: add virCHDomainGetMonitor helper method
  ch_domain: add methods to manage private vcpu data
  ch_driver: domainGetVcpuPinInfo and nodeGetCPUMap
  ch_monitor: Get nicindexes in prep for cgroup mgmt
  ch: methods for cgroup mgmt in ch driver
  ch_driver,ch_domain: vcpupin callback in ch driver
  ch_driver: enable typed param string for numatune
  ch_driver: add numatune callbacks for CH driver

 src/ch/ch_conf.c               |   2 +
 src/ch/ch_conf.h               |   6 +-
 src/ch/ch_domain.c             | 172 ++++++-
 src/ch/ch_domain.h             |  32 +-
 src/ch/ch_driver.c             | 789 +++++++++++++++++++++++++++++++++
 src/ch/ch_monitor.c            | 341 +++++++++++---
 src/ch/ch_monitor.h            |  60 ++-
 src/ch/ch_process.c            | 385 +++++++++++++++-
 src/ch/ch_process.h            |   3 +
 src/ch/meson.build             |   1 +
 src/hypervisor/domain_cgroup.c | 426 +++++++++++++++++-
 src/hypervisor/domain_cgroup.h |  52 +++
 src/libvirt_private.syms       |  15 +
 src/qemu/qemu_cgroup.c         | 410 +----------------
 src/qemu/qemu_cgroup.h         |  11 -
 src/qemu/qemu_driver.c         | 130 +-----
 src/qemu/qemu_hotplug.c        |   7 +-
 src/qemu/qemu_process.c        |  20 +-
 src/util/virprocess.c          | 108 +++++
 src/util/virprocess.h          |   5 +
 20 files changed, 2357 insertions(+), 618 deletions(-)

-- 
2.27.0


Re: [libvirt PATCH v3 00/13] cgroup and thread management in ch driver.
Posted by Praveen K Paladugu 2 years, 3 months ago
Folks,
I'd like to get this patch set in next release. Bubbling up this thread
as it was sent out before the holidays.

Regards,
Praveen K Paladugu

On 12/10/2021 2:34 PM, Praveen K Paladugu wrote:
> This patchset adds support for cgroup management of ch threads. This version
> correctly manages cgroups for vcpu and emulator threads created by ch. cgroup
> management for iothreads is not yet supported.
> 
> Along with cgroup management, this patchset also enables support for pinning
> vcpu and emulator threads to selected host cpus.
> 
> v3:
> * addrressed all the formatting comments in v2 patch set
> * dropped indentation patches are they do not adhere to libvirt coding style
> * fixed build issue in qemu driver that was introduced in v2
> 
> Praveen K Paladugu (5):
>    util: Helper functions to get process info
>    ch_driver,ch_domain: vcpu info getter callbacks
>    qemu,hypervisor: refactor some cgroup mgmt methods
>    ch_process: Setup emulator and iothread settings
>    ch_driver: emulator threadinfo & pinning callbacks
> 
> Vineeth Pillai (8):
>    ch_domain: add virCHDomainGetMonitor helper method
>    ch_domain: add methods to manage private vcpu data
>    ch_driver: domainGetVcpuPinInfo and nodeGetCPUMap
>    ch_monitor: Get nicindexes in prep for cgroup mgmt
>    ch: methods for cgroup mgmt in ch driver
>    ch_driver,ch_domain: vcpupin callback in ch driver
>    ch_driver: enable typed param string for numatune
>    ch_driver: add numatune callbacks for CH driver
> 
>   src/ch/ch_conf.c               |   2 +
>   src/ch/ch_conf.h               |   6 +-
>   src/ch/ch_domain.c             | 172 ++++++-
>   src/ch/ch_domain.h             |  32 +-
>   src/ch/ch_driver.c             | 789 +++++++++++++++++++++++++++++++++
>   src/ch/ch_monitor.c            | 341 +++++++++++---
>   src/ch/ch_monitor.h            |  60 ++-
>   src/ch/ch_process.c            | 385 +++++++++++++++-
>   src/ch/ch_process.h            |   3 +
>   src/ch/meson.build             |   1 +
>   src/hypervisor/domain_cgroup.c | 426 +++++++++++++++++-
>   src/hypervisor/domain_cgroup.h |  52 +++
>   src/libvirt_private.syms       |  15 +
>   src/qemu/qemu_cgroup.c         | 410 +----------------
>   src/qemu/qemu_cgroup.h         |  11 -
>   src/qemu/qemu_driver.c         | 130 +-----
>   src/qemu/qemu_hotplug.c        |   7 +-
>   src/qemu/qemu_process.c        |  20 +-
>   src/util/virprocess.c          | 108 +++++
>   src/util/virprocess.h          |   5 +
>   20 files changed, 2357 insertions(+), 618 deletions(-)
>