On 09/20/2018 06:10 AM, Wang Huaqiang wrote: > This patch is introducing cache monitor(CMT) to cache and > memory bandwidth monitor(MBM) for monitoring CPU memory > bandwidth. > The host capability of the two monitors is also introduced > in this patch. > > For CMT, the host capability is shown like: > <host> > ... > <cache> > <bank id='0' level='3' type='both' size='15' unit='MiB' cpus='0-5'> > <control granularity='768' min='1536' unit='KiB' type='both' maxAllocs='4'/> > </bank> > <monitor level='3' 'reuseThreshold'='270336' maxMonitors='176'> > <feature name='llc_occupancy'/> > </monitor> > </cache> > ... > </host> > > For MBM, the capability is shown like this: > > <host> > ... > <memory_bandwidth> > <node id='1' cpus='6-11'> > <control granularity='10' min ='10' maxAllocs='4'/> > </node> > <monitor maxMonitors='176'> > <feature name='mbm_total_bytes'/> > <feature name='mbm_local_bytes'/> > </monitor> > </memory_bandwidth> > ... > </host> > > Signed-off-by: Wang Huaqiang <huaqiang.wang@xxxxxxxxx> > --- > docs/schemas/capability.rng | 37 ++++++- > src/conf/capabilities.c | 64 ++++++++++++ > src/conf/capabilities.h | 4 + > src/libvirt_private.syms | 2 + > src/util/virresctrl.c | 110 +++++++++++++++++++++ > src/util/virresctrl.h | 40 ++++++++ > .../resctrl/info/L3_MON/max_threshold_occupancy | 1 + > .../resctrl/info/L3_MON/mon_features | 1 + > .../resctrl/info/L3_MON/num_rmids | 1 + > .../linux-resctrl-cmt/resctrl/manualres/cpus | 1 + > .../linux-resctrl-cmt/resctrl/manualres/schemata | 1 + > .../linux-resctrl-cmt/resctrl/manualres/tasks | 0 > .../linux-resctrl-cmt/resctrl/schemata | 1 + > tests/vircaps2xmldata/linux-resctrl-cmt/system | 1 + > .../resctrl/info/L3/cbm_mask | 1 + > .../resctrl/info/L3/min_cbm_bits | 1 + > .../resctrl/info/L3/num_closids | 1 + > .../resctrl/info/L3_MON/max_threshold_occupancy | 1 + > .../resctrl/info/L3_MON/mon_features | 10 ++ > .../resctrl/info/L3_MON/num_rmids | 1 + > .../resctrl/info/MB/bandwidth_gran | 1 + > .../resctrl/info/MB/min_bandwidth | 1 + > .../resctrl/info/MB/num_closids | 1 + > .../resctrl/manualres/cpus | 1 + > .../resctrl/manualres/schemata | 1 + > .../resctrl/manualres/tasks | 0 > .../linux-resctrl-fake-feature/resctrl/schemata | 1 + > .../linux-resctrl-fake-feature/system | 1 + > .../resctrl/info/L3_MON/max_threshold_occupancy | 1 + > .../linux-resctrl/resctrl/info/L3_MON/mon_features | 3 + > .../linux-resctrl/resctrl/info/L3_MON/num_rmids | 1 + > .../vircaps2xmldata/vircaps-x86_64-resctrl-cmt.xml | 53 ++++++++++ > .../vircaps-x86_64-resctrl-fake-feature.xml | 73 ++++++++++++++ > tests/vircaps2xmldata/vircaps-x86_64-resctrl.xml | 7 ++ > tests/vircaps2xmltest.c | 2 + > 35 files changed, 425 insertions(+), 1 deletion(-) > create mode 100644 tests/vircaps2xmldata/linux-resctrl-cmt/resctrl/info/L3_MON/max_threshold_occupancy > create mode 100644 tests/vircaps2xmldata/linux-resctrl-cmt/resctrl/info/L3_MON/mon_features > create mode 100644 tests/vircaps2xmldata/linux-resctrl-cmt/resctrl/info/L3_MON/num_rmids > create mode 100644 tests/vircaps2xmldata/linux-resctrl-cmt/resctrl/manualres/cpus > create mode 100644 tests/vircaps2xmldata/linux-resctrl-cmt/resctrl/manualres/schemata > create mode 100644 tests/vircaps2xmldata/linux-resctrl-cmt/resctrl/manualres/tasks > create mode 100644 tests/vircaps2xmldata/linux-resctrl-cmt/resctrl/schemata > create mode 120000 tests/vircaps2xmldata/linux-resctrl-cmt/system > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/L3/cbm_mask > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/L3/min_cbm_bits > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/L3/num_closids > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/L3_MON/max_threshold_occupancy > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/L3_MON/mon_features > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/L3_MON/num_rmids > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/MB/bandwidth_gran > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/MB/min_bandwidth > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/info/MB/num_closids > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/manualres/cpus > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/manualres/schemata > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/manualres/tasks > create mode 100644 tests/vircaps2xmldata/linux-resctrl-fake-feature/resctrl/schemata > create mode 120000 tests/vircaps2xmldata/linux-resctrl-fake-feature/system > create mode 100644 tests/vircaps2xmldata/linux-resctrl/resctrl/info/L3_MON/max_threshold_occupancy > create mode 100644 tests/vircaps2xmldata/linux-resctrl/resctrl/info/L3_MON/mon_features > create mode 100644 tests/vircaps2xmldata/linux-resctrl/resctrl/info/L3_MON/num_rmids > create mode 100644 tests/vircaps2xmldata/vircaps-x86_64-resctrl-cmt.xml > create mode 100644 tests/vircaps2xmldata/vircaps-x86_64-resctrl-fake-feature.xml > Reviewed-by: John Ferlan <jferlan@xxxxxxxxxx> John [once I have the answer to the question I posed in 1/4 I can push the series]. -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list