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

Praveen K Paladugu posted 13 patches 2 years, 5 months ago
Test syntax-check failed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/20211022153747.3129484-1-prapal@linux.microsoft.com
There is a newer version of this series
po/POTFILES.in        |   1 +
src/ch/ch_cgroup.c    | 457 ++++++++++++++++++++++++
src/ch/ch_cgroup.h    |  45 +++
src/ch/ch_conf.c      |   2 +
src/ch/ch_conf.h      |   9 +-
src/ch/ch_domain.c    | 170 ++++++++-
src/ch/ch_domain.h    |  32 +-
src/ch/ch_driver.c    | 810 +++++++++++++++++++++++++++++++++++++++++-
src/ch/ch_monitor.c   | 254 ++++++++++++-
src/ch/ch_monitor.h   |  60 +++-
src/ch/ch_process.c   | 368 ++++++++++++++++++-
src/ch/ch_process.h   |   3 +
src/ch/meson.build    |   6 +
src/util/virprocess.c | 136 +++++++
src/util/virprocess.h |   5 +
15 files changed, 2329 insertions(+), 29 deletions(-)
create mode 100644 src/ch/ch_cgroup.c
create mode 100644 src/ch/ch_cgroup.h
[libvirt PATCH 00/13] cgroup and thread management in ch driver.
Posted by Praveen K Paladugu 2 years, 5 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.

Praveen K Paladugu (2):
  ch_process: Setup emulator and iothread settings
  ch_driver: emulator threadinfo & pinning callbacks

Vineeth Pillai (11):
  util: Helper functions to get process info
  ch: Explicitly link to virt_util_lib
  ch_domain: add virCHDomainGetMonitor helper method
  ch_domain: add methods to manage private vcpu data
  ch_driver,ch_domain: vcpu info getter callbacks
  ch_driver: domainGetVcpuPinInfo and nodeGetCPUMap
  ch_monitor: Get nicindexes in prep for cgroup mgmt
  ch_cgroup: 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

 po/POTFILES.in        |   1 +
 src/ch/ch_cgroup.c    | 457 ++++++++++++++++++++++++
 src/ch/ch_cgroup.h    |  45 +++
 src/ch/ch_conf.c      |   2 +
 src/ch/ch_conf.h      |   9 +-
 src/ch/ch_domain.c    | 170 ++++++++-
 src/ch/ch_domain.h    |  32 +-
 src/ch/ch_driver.c    | 810 +++++++++++++++++++++++++++++++++++++++++-
 src/ch/ch_monitor.c   | 254 ++++++++++++-
 src/ch/ch_monitor.h   |  60 +++-
 src/ch/ch_process.c   | 368 ++++++++++++++++++-
 src/ch/ch_process.h   |   3 +
 src/ch/meson.build    |   6 +
 src/util/virprocess.c | 136 +++++++
 src/util/virprocess.h |   5 +
 15 files changed, 2329 insertions(+), 29 deletions(-)
 create mode 100644 src/ch/ch_cgroup.c
 create mode 100644 src/ch/ch_cgroup.h

-- 
2.27.0


Re: [libvirt PATCH 00/13] cgroup and thread management in ch driver.
Posted by Michal Prívozník 2 years, 5 months ago
On 10/22/21 5:37 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.
> 
> Praveen K Paladugu (2):
>   ch_process: Setup emulator and iothread settings
>   ch_driver: emulator threadinfo & pinning callbacks
> 
> Vineeth Pillai (11):
>   util: Helper functions to get process info
>   ch: Explicitly link to virt_util_lib
>   ch_domain: add virCHDomainGetMonitor helper method
>   ch_domain: add methods to manage private vcpu data
>   ch_driver,ch_domain: vcpu info getter callbacks
>   ch_driver: domainGetVcpuPinInfo and nodeGetCPUMap
>   ch_monitor: Get nicindexes in prep for cgroup mgmt
>   ch_cgroup: 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
> 
>  po/POTFILES.in        |   1 +
>  src/ch/ch_cgroup.c    | 457 ++++++++++++++++++++++++
>  src/ch/ch_cgroup.h    |  45 +++
>  src/ch/ch_conf.c      |   2 +
>  src/ch/ch_conf.h      |   9 +-
>  src/ch/ch_domain.c    | 170 ++++++++-
>  src/ch/ch_domain.h    |  32 +-
>  src/ch/ch_driver.c    | 810 +++++++++++++++++++++++++++++++++++++++++-
>  src/ch/ch_monitor.c   | 254 ++++++++++++-
>  src/ch/ch_monitor.h   |  60 +++-
>  src/ch/ch_process.c   | 368 ++++++++++++++++++-
>  src/ch/ch_process.h   |   3 +
>  src/ch/meson.build    |   6 +
>  src/util/virprocess.c | 136 +++++++
>  src/util/virprocess.h |   5 +
>  15 files changed, 2329 insertions(+), 29 deletions(-)
>  create mode 100644 src/ch/ch_cgroup.c
>  create mode 100644 src/ch/ch_cgroup.h
> 

Firstly, apologies for reviewing only after the freeze.
Secondly, patches look more or less good. I've pointed out couple of
things I think are worth addressing in v2.

Michal

Re: [libvirt PATCH 00/13] cgroup and thread management in ch driver.
Posted by Yan Fu 2 years, 5 months ago
Hi,

Could you give a reference link for ch driver please?

Thanks,
Yan Fu

On Fri, Oct 22, 2021 at 11:43 PM Praveen K Paladugu <
prapal@linux.microsoft.com> 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.
>
> Praveen K Paladugu (2):
>   ch_process: Setup emulator and iothread settings
>   ch_driver: emulator threadinfo & pinning callbacks
>
> Vineeth Pillai (11):
>   util: Helper functions to get process info
>   ch: Explicitly link to virt_util_lib
>   ch_domain: add virCHDomainGetMonitor helper method
>   ch_domain: add methods to manage private vcpu data
>   ch_driver,ch_domain: vcpu info getter callbacks
>   ch_driver: domainGetVcpuPinInfo and nodeGetCPUMap
>   ch_monitor: Get nicindexes in prep for cgroup mgmt
>   ch_cgroup: 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
>
>  po/POTFILES.in        |   1 +
>  src/ch/ch_cgroup.c    | 457 ++++++++++++++++++++++++
>  src/ch/ch_cgroup.h    |  45 +++
>  src/ch/ch_conf.c      |   2 +
>  src/ch/ch_conf.h      |   9 +-
>  src/ch/ch_domain.c    | 170 ++++++++-
>  src/ch/ch_domain.h    |  32 +-
>  src/ch/ch_driver.c    | 810 +++++++++++++++++++++++++++++++++++++++++-
>  src/ch/ch_monitor.c   | 254 ++++++++++++-
>  src/ch/ch_monitor.h   |  60 +++-
>  src/ch/ch_process.c   | 368 ++++++++++++++++++-
>  src/ch/ch_process.h   |   3 +
>  src/ch/meson.build    |   6 +
>  src/util/virprocess.c | 136 +++++++
>  src/util/virprocess.h |   5 +
>  15 files changed, 2329 insertions(+), 29 deletions(-)
>  create mode 100644 src/ch/ch_cgroup.c
>  create mode 100644 src/ch/ch_cgroup.h
>
> --
> 2.27.0
>
>
>
Re: [libvirt PATCH 00/13] cgroup and thread management in ch driver.
Posted by Praveen K Paladugu 2 years, 4 months ago

On 10/24/2021 9:59 PM, Yan Fu wrote:
> Hi,
> 
> Could you give a reference link for ch driver please?
> 
> Thanks,
> Yan Fu
Sorry about the delay with my response. What do you mean by a

reference link?



> 
> On Fri, Oct 22, 2021 at 11:43 PM Praveen K Paladugu 
> <prapal@linux.microsoft.com <mailto:prapal@linux.microsoft.com>> 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.
> 
>     Praveen K Paladugu (2):
>        ch_process: Setup emulator and iothread settings
>        ch_driver: emulator threadinfo & pinning callbacks
> 
>     Vineeth Pillai (11):
>        util: Helper functions to get process info
>        ch: Explicitly link to virt_util_lib
>        ch_domain: add virCHDomainGetMonitor helper method
>        ch_domain: add methods to manage private vcpu data
>        ch_driver,ch_domain: vcpu info getter callbacks
>        ch_driver: domainGetVcpuPinInfo and nodeGetCPUMap
>        ch_monitor: Get nicindexes in prep for cgroup mgmt
>        ch_cgroup: 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
> 
>       po/POTFILES.in        |   1 +
>       src/ch/ch_cgroup.c    | 457 ++++++++++++++++++++++++
>       src/ch/ch_cgroup.h    |  45 +++
>       src/ch/ch_conf.c      |   2 +
>       src/ch/ch_conf.h      |   9 +-
>       src/ch/ch_domain.c    | 170 ++++++++-
>       src/ch/ch_domain.h    |  32 +-
>       src/ch/ch_driver.c    | 810 +++++++++++++++++++++++++++++++++++++++++-
>       src/ch/ch_monitor.c   | 254 ++++++++++++-
>       src/ch/ch_monitor.h   |  60 +++-
>       src/ch/ch_process.c   | 368 ++++++++++++++++++-
>       src/ch/ch_process.h   |   3 +
>       src/ch/meson.build    |   6 +
>       src/util/virprocess.c | 136 +++++++
>       src/util/virprocess.h |   5 +
>       15 files changed, 2329 insertions(+), 29 deletions(-)
>       create mode 100644 src/ch/ch_cgroup.c
>       create mode 100644 src/ch/ch_cgroup.h
> 
>     -- 
>     2.27.0
> 
> 

-- 
Regards,
Praveen K Paladugu