[libvirt] [PATCHv2 00/11] util/resctrl cleanups and refactors

Wang Huaqiang posted 11 patches 2 weeks ago
Test syntax-check passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/libvirt tags/patchew/1560223876-28816-1-git-send-email-huaqiang.wang@intel.com
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(-)

[libvirt] [PATCHv2 00/11] util/resctrl cleanups and refactors

Posted by Wang Huaqiang 2 weeks ago
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@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list