Patches submitted for purpose of refactoring existing 'resctrl' related source code, including some code cleanups as well as some fixes. This is also a preparation for memory bandwidth monitor codes. Plan to support Resctrl Control Monitors, which is a feature introduced by kernel 'resctrl' sub-model. Submit some cleanup and refactoring patches for upcoming memory bandwidth resource monitoring (MBM) monitors. Related MBM RFC is https://www.redhat.com/archives/libvir-list/2019-April/msg01409.html. This RFC is not actively discussed since libvirt already implemented similar resctrl cache monitoring (CMT), and lots details have been discussed and implemented during the work of CMT. The cleanups and refactoring includes: v2 changes: 1. Addressed comments of v1. 2. Introduce a new algorithm for verifying new monitor vcpus and existing monitors and allocations. 3. Fixes for creating default-allocation-monitor in 'resctrl' file system.(patch 0001). v1 changes: 1. Removing some reluctant lines and white spaces that is existing in current code and not meet the libvirt coding style. 2. Replace 'virResctrlAllocIsEmpty' with @n==0 for indicating no resctrl allocation in configuration file. 3. Private API changes, removed 'virResctrlMonitorGetCacheOccupancy' and exported a new API named 'virResctrlMonitorGetStats' with similar functionality, but with capability to be used for retrieving MBM statistical information. 4. Refactoring 'virResctrlMonitorFreeStats' for more reusing in code. 5. Extend data structure 'virResctrlMonitorStats' with the capability to carry multiple statistical information from monitor. Wang Huaqiang (11): util,conf: Handle default monitor group of an allocation properly conf: code cleanup, remove empty line and one space conf: code cleanup for return error code directly conf: some code cleanup conf: refactor 'virDomainResctrlVcpuMatch' and some code cleanup conf: Append 'resctrl' object according to number of monitor group directly util: Refactor and rename 'virResctrlMonitorFreeStats' util: Refactor 'virResctrlMonitorStats' util: Extend virresctl API to retrieve multiple monitor statistics util: Remove unused virResctrlMonitorGetCacheOccupancy conf: Refactor and rename the function to validate a new resctrl monitor src/conf/domain_conf.c | 145 ++++++++++++++++++++++++----------------------- src/libvirt_private.syms | 5 +- src/qemu/qemu_driver.c | 41 ++++++++++---- src/qemu/qemu_process.c | 3 +- src/util/virresctrl.c | 75 ++++++++++-------------- src/util/virresctrl.h | 23 +++++--- 6 files changed, 156 insertions(+), 136 deletions(-) -- 2.7.4 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list