[libvirt] [PATCH RFC 0/2] Implement l3 CAT

Eli Qiao liyong.qiao at intel.com
Mon Jun 12 09:48:39 UTC 2017


This is a RFC patch to implement l3 CAT. There's old RFC V3 [1] patch, but don't
get any attentions, reason maybe that it's is not a workable one.

I address some of the comments for RFC V2 version from Martin.

1. Add file lock while access /sys/fs/resctrl base on kernel documents [3].
2. Variable renaming.
3. Tested locally to create vm with cachetune defined and works well.

Issues want to get some comments:

I can not pass syntax-check as I reference the cache tune and cachebank
definition (from conf/domain_conf.h). Since I need a complex struct to
pass cachetune and host's cachetune information to resctrl.

I can split patch if it's hard to review. Sorry for inconvient.

Patch was pushed to github [4] for easing read.

[1] https://www.redhat.com/archives/libvir-list/2017-June/msg00069.html
[2] https://www.redhat.com/archives/libvir-list/2017-April/msg01466.html
[3] https://www.kernel.org/doc/Documentation/x86/intel_rdt_ui.txt
[4] https://github.com/taget/libvirt/commits/cache

Eli Qiao (2):
  Resctrl: Add new xml element to support cache tune
  Resctrl: Add uitls functions to operate sysfs resctrl

 docs/schemas/domaincommon.rng             |  54 ++
 include/libvirt/virterror.h               |   1 +
 src/Makefile.am                           |   1 +
 src/conf/domain_conf.c                    | 131 +++++
 src/conf/domain_conf.h                    |  21 +
 src/libvirt_private.syms                  |   9 +
 src/qemu/qemu_process.c                   |  54 ++
 src/util/virerror.c                       |   1 +
 src/util/virresctrl.c                     | 851 ++++++++++++++++++++++++++++++
 src/util/virresctrl.h                     |  79 +++
 tests/Makefile.am                         |   8 +-
 tests/virresctrldata/L3-free.schemata     |   1 +
 tests/virresctrldata/L3CODE-free.schemata |   1 +
 tests/virresctrldata/L3DATA-free.schemata |   1 +
 tests/virresctrldata/linux-resctrl        |   1 +
 tests/virresctrldata/linux-resctrl-cdp    |   1 +
 tests/virresctrltest.c                    | 119 +++++
 17 files changed, 1333 insertions(+), 1 deletion(-)
 create mode 100644 src/util/virresctrl.c
 create mode 100644 src/util/virresctrl.h
 create mode 100644 tests/virresctrldata/L3-free.schemata
 create mode 100644 tests/virresctrldata/L3CODE-free.schemata
 create mode 100644 tests/virresctrldata/L3DATA-free.schemata
 create mode 120000 tests/virresctrldata/linux-resctrl
 create mode 120000 tests/virresctrldata/linux-resctrl-cdp
 create mode 100644 tests/virresctrltest.c

--
1.9.1




More information about the libvir-list mailing list