All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 00/16] Enable Memory Bandwidth Allocation in Xen
@ 2017-10-08  7:23 Yi Sun
  2017-10-08  7:23 ` [PATCH v6 01/16] docs: create Memory Bandwidth Allocation (MBA) feature document Yi Sun
                   ` (15 more replies)
  0 siblings, 16 replies; 26+ messages in thread
From: Yi Sun @ 2017-10-08  7:23 UTC (permalink / raw)
  To: xen-devel
  Cc: Yi Sun, Konrad Rzeszutek Wilk, Andrew Cooper, Ian Jackson,
	Julien Grall, Jan Beulich, Chao Peng, Wei Liu, Daniel De Graaf,
	Roger Pau Monné

Hi, all,

We plan to bring a new PSR (Platform Shared Resource) feature called
Intel Memory Bandwidth Allocation (MBA) to Xen.

Besides the MBA enabling, we change some interfaces to make them more
general but not only for CAT.

Any comments are welcome!

You can find this series at:
https://github.com/yisun-git/xen_mba mba_v6

This version base on below pre-fix patch:
"x86: psr: support co-exist features' values setting"
https://lists.xen.org/archives/html/xen-devel/2017-10/msg00866.html

CC: Jan Beulich <jbeulich@suse.com>
CC: Andrew Cooper <andrew.cooper3@citrix.com>
CC: Wei Liu <wei.liu2@citrix.com>
CC: Ian Jackson <ian.jackson@eu.citrix.com>
CC: Daniel De Graaf <dgdegra@tycho.nsa.gov>
CC: Roger Pau Monné <roger.pau@citrix.com>
CC: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
CC: Chao Peng <chao.p.peng@linux.intel.com>
CC: Julien Grall <julien.grall@arm.com>

---
Acked and Reviewed list before V6:

a - Acked-by
r - Reviewed-by

  r  patch 1  - docs: create Memory Bandwidth Allocation (MBA) feature document
  r  patch 2  - Rename PSR sysctl/domctl interfaces and xsm policy to make them be general
  ar patch 3  - x86: rename 'cbm_type' to 'psr_type' to make it general
  r  patch 4  - x86: a few optimizations to psr codes
  r  patch 5  - x86: implement data structure and CPU init flow for MBA
  r  patch 6  - x86: implement get hw info flow for MBA
  ar patch 7  - x86: implement get value interface for MBA
  ar patch 9  - tools: create general interfaces to support psr allocation features
  ar patch 10 - tools: implement the new libxc get hw info interface
  ar patch 11 - tools: implement the new libxl get hw info interface
  ar patch 12 - tools: implement the new xl get hw info interface
  ar patch 13 - tools: rename 'xc_psr_cat_type' to 'xc_psr_type'
  ar patch 14 - tools: implement new generic get value interface and MBA get value command
  ar patch 15 - tools: implement new generic set value interface and MBA set value command
  ar patch 16 - docs: add MBA description in docs

---
V6 change list:

Patch 1:
    - fix some words.
      (suggested by Roger Pau Monné)
Patch 2:
    - move macro definition into the function and undefine it after use.
      (suggested by Roger Pau Monné)
    - do not bump sysctl version because it has been bumped for 4.10.
      (suggested by Roger Pau Monné)
Patch 4:
    - restore 'write_msr()' type to 'void'.
      (suggested by Jan Beulich and Roger Pau Monné)
    - change 'ebx' in 'psr_cpu_init' to 'feat_mask'.
      (suggested by Jan Beulich and Roger Pau Monné)
Patch 5:
    - restore type of 'mba_write_msr' to 'void'.
Patch 8:
    - split co-exist features' values setting flow to a new patch.
      (suggested by Jan Beulich)
    - restore codes related to 'mba_check_thrtl' and 'check_value'.
      (suggested by Jan Beulich)
Patch 10:
    - remove unnecessary spaces in brackets.
      (suggested by Wei Liu)
    - use assert to check input lvl.
      (suggested by Roger Pau Monné)
Patch 14:
    - fix one coding style issue.
      (suggested by Roger Pau Monné)
Patch 15:
    - move xc_type definition and value get out of the loop.
      (suggested by Roger Pau Monné)

Yi Sun (16):
  docs: create Memory Bandwidth Allocation (MBA) feature document
  Rename PSR sysctl/domctl interfaces and xsm policy to make them be
    general
  x86: rename 'cbm_type' to 'psr_type' to make it general
  x86: a few optimizations to psr codes
  x86: implement data structure and CPU init flow for MBA
  x86: implement get hw info flow for MBA
  x86: implement get value interface for MBA
  x86: implement set value flow for MBA
  tools: create general interfaces to support psr allocation features
  tools: implement the new libxc get hw info interface
  tools: implement the new libxl get hw info interface
  tools: implement the new xl get hw info interface
  tools: rename 'xc_psr_cat_type' to 'xc_psr_type'
  tools: implement new generic get value interface and MBA get value
    command
  tools: implement new generic set value interface and MBA set value
    command
  docs: add MBA description in docs

 docs/features/intel_psr_mba.pandoc  | 297 ++++++++++++++++++++++++++++++++++
 docs/man/xl.pod.1.in                |  33 ++++
 docs/misc/xl-psr.markdown           |  62 ++++++++
 tools/flask/policy/modules/dom0.te  |   4 +-
 tools/libxc/include/xenctrl.h       |  44 +++--
 tools/libxc/xc_psr.c                | 109 ++++++++-----
 tools/libxl/libxl.h                 |  37 +++++
 tools/libxl/libxl_psr.c             | 223 ++++++++++++++++++++------
 tools/libxl/libxl_types.idl         |  22 +++
 tools/xl/xl.h                       |   2 +
 tools/xl/xl_cmdtable.c              |  12 ++
 tools/xl/xl_psr.c                   | 279 +++++++++++++++++++++++++-------
 xen/arch/x86/domctl.c               |  87 +++++-----
 xen/arch/x86/psr.c                  | 310 +++++++++++++++++++++++++++---------
 xen/arch/x86/sysctl.c               |  53 ++++--
 xen/include/asm-x86/msr-index.h     |   1 +
 xen/include/asm-x86/psr.h           |  22 +--
 xen/include/public/domctl.h         |  26 +--
 xen/include/public/sysctl.h         |  20 ++-
 xen/xsm/flask/hooks.c               |   8 +-
 xen/xsm/flask/policy/access_vectors |   8 +-
 21 files changed, 1331 insertions(+), 328 deletions(-)
 create mode 100644 docs/features/intel_psr_mba.pandoc

-- 
1.9.1


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2017-10-13  6:56 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-08  7:23 [PATCH v6 00/16] Enable Memory Bandwidth Allocation in Xen Yi Sun
2017-10-08  7:23 ` [PATCH v6 01/16] docs: create Memory Bandwidth Allocation (MBA) feature document Yi Sun
2017-10-08  7:23 ` [PATCH v6 02/16] Rename PSR sysctl/domctl interfaces and xsm policy to make them be general Yi Sun
2017-10-10 14:59   ` Jan Beulich
2017-10-08  7:23 ` [PATCH v6 03/16] x86: rename 'cbm_type' to 'psr_type' to make it general Yi Sun
2017-10-08  7:23 ` [PATCH v6 04/16] x86: a few optimizations to psr codes Yi Sun
2017-10-10 15:01   ` Jan Beulich
2017-10-08  7:23 ` [PATCH v6 05/16] x86: implement data structure and CPU init flow for MBA Yi Sun
2017-10-10 15:26   ` Jan Beulich
2017-10-08  7:23 ` [PATCH v6 06/16] x86: implement get hw info " Yi Sun
2017-10-11 13:12   ` Jan Beulich
2017-10-08  7:23 ` [PATCH v6 07/16] x86: implement get value interface " Yi Sun
2017-10-08  7:23 ` [PATCH v6 08/16] x86: implement set value flow " Yi Sun
2017-10-11 13:38   ` Jan Beulich
2017-10-12  4:33     ` Yi Sun
2017-10-12  9:43       ` Jan Beulich
2017-10-13  2:02         ` Yi Sun
2017-10-13  6:56           ` Jan Beulich
2017-10-08  7:23 ` [PATCH v6 09/16] tools: create general interfaces to support psr allocation features Yi Sun
2017-10-08  7:23 ` [PATCH v6 10/16] tools: implement the new libxc get hw info interface Yi Sun
2017-10-08  7:23 ` [PATCH v6 11/16] tools: implement the new libxl " Yi Sun
2017-10-08  7:23 ` [PATCH v6 12/16] tools: implement the new xl " Yi Sun
2017-10-08  7:23 ` [PATCH v6 13/16] tools: rename 'xc_psr_cat_type' to 'xc_psr_type' Yi Sun
2017-10-08  7:23 ` [PATCH v6 14/16] tools: implement new generic get value interface and MBA get value command Yi Sun
2017-10-08  7:24 ` [PATCH v6 15/16] tools: implement new generic set value interface and MBA set " Yi Sun
2017-10-08  7:24 ` [PATCH v6 16/16] docs: add MBA description in docs Yi Sun

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.