[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v4 00/15] Enable Memory Bandwidth Allocation in Xen
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_v4 CC: Jan Beulich <jbeulich@xxxxxxxx> CC: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> CC: Wei Liu <wei.liu2@xxxxxxxxxx> CC: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> CC: Daniel De Graaf <dgdegra@xxxxxxxxxxxxx> CC: Roger Pau Monné <roger.pau@xxxxxxxxxx> CC: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> CC: Chao Peng <chao.p.peng@xxxxxxxxxxxxxxx> CC: Julien Grall <julien.grall@xxxxxxx> --- Acked and Reviewed list before V4: a - Acked-by r - Reviewed-by ar patch 2 - Rename PSR sysctl/domctl interfaces and xsm policy to make them be general r patch 3 - x86: rename 'cbm_type' to 'psr_type' to make it general r patch 6 - x86: implement get value interface for MBA ar patch 12 - tools: rename 'xc_psr_cat_type' to 'xc_psr_type' a patch 13 - tools: implement new generic get value interface and MBA get value command a patch 15 - docs: add MBA description in docs --- V4 change list: Patch 1: - add 'domain-name' as parameter of 'psr-mba-show/psr-mba-set'. (suggested by Roger Pau Monné) - fix some wordings. (suggested by Roger Pau Monné) - explain how user can know the MBA_MAX. (suggested by Roger Pau Monné) - move the description of 'Linear mode/Non-linear mode' into section of 'psr-mba-show'. (suggested by Roger Pau Monné) - change 'per-thread' to 'per-hyper-thread' to make it clearer. (suggested by Roger Pau Monné) - upgrade revision number. Patch 2: - remove 'ALLOC_' from names. (suggested by Roger Pau Monné) - fix comments. (suggested by Roger Pau Monné) Patch 3: - fix words in commit message. (suggested by Roger Pau Monné) Patch 4: - modify commit message. (suggested by Roger Pau Monné) - fix a comment. (suggested by Roger Pau Monné) - join two checks in a single if. (suggested by Roger Pau Monné) - remove redundant initialization of 'feat->cos_reg_val[0]'. (suggested by Roger Pau Monné) - change 'reg_b' to 'ebx'. (suggested by Jan Beulich) - change type of 'mba_init_feature' from 'int' to 'bool'. (suggested by Roger Pau Monné) - change type of 'cat_init_feature' from 'int' to 'bool'. Patch 5: - remove 'ALLOC_' from macro names. (suggested by Roger Pau Monné) - initialize 'data[PSR_INFO_ARRAY_SIZE]' to 0 to prevent to leak stack data. (suggested by Roger Pau Monné) Patch 6: - remove 'ALLOC_' from macro names. (suggested by Roger Pau Monné) Patch 7: - remove 'ALLOC_' from macro names. (suggested by Roger Pau Monné) - join two checks into a single if. (suggested by Roger Pau Monné) - remove redundant local variable 'array_len'. (suggested by Roger Pau Monné) Patch 8: - add description for LIBXL_HAVE_PSR_GENERIC to mention newly added public functions. (suggested by Roger Pau Monné) Patch 9: - remove 'ALLOC_' from macro names. (suggested by Roger Pau Monné) - remove 'XC_PSR_FEAT_UNKNOWN' which is not necessary. (suggested by Roger Pau Monné) - remove 'FEAT_' from enum item names. (suggested by Roger Pau Monné) - remove 'xc_' from struct name. (suggested by Roger Pau Monné) - adjust codes to reduce indentation. (suggested by Roger Pau Monné) - assert for not happened case. (suggested by Roger Pau Monné) - add LOGE to show errno. (suggested by Roger Pau Monné) Patch 10: - remove 'xc_' from struct name. (suggested by Roger Pau Monné) - fix words in commit message. (suggested by Roger Pau Monné) - change type of 'libxl__hw_info_to_libxl_cat_info' to void and use assert to check invalid type. Then, remove check for 'libxl__hw_info_to_libxl_cat_info'. (suggested by Roger Pau Monné) - change type of 'libxl__xc_hw_info_to_libxl_hw_info' to void and use assert to check invalid type. Then, remove check for 'libxl__xc_hw_info_to_libxl_hw_info'. (suggested by Roger Pau Monné) Patch 12: - move assignment of xc_type to its declaration place. (suggested by Roger Pau Monné) Patch 13: - use designated initializers for 'feat_name[]'. (suggested by Roger Pau Monné) - use LOG in 'libxl__psr_alloc_log_err_msg'. (suggested by Roger Pau Monné) Patch 14: - remove 'ALLOC_' from macro name. (suggested by Roger Pau Monné) - adjust place of argc check and return EXIT_FAILURE. (suggested by Roger Pau Monné) - fix indentation issue. (suggested by Roger Pau Monné) - move same type local variables declaration to a single line. (suggested by Roger Pau Monné) Patch 15: - modify description of MBA in 'xl.pod.1.in' to be same as feature doc. (suggested by Roger Pau Monné) - fix words issue. (suggested by Roger Pau Monné) Yi Sun (15): 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: 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 | 291 +++++++++++++++++++++++++++++ docs/man/xl.pod.1.in | 33 ++++ docs/misc/xl-psr.markdown | 63 +++++++ tools/flask/policy/modules/dom0.te | 4 +- tools/libxc/include/xenctrl.h | 46 +++-- tools/libxc/xc_psr.c | 114 +++++++----- tools/libxl/libxl.h | 37 ++++ tools/libxl/libxl_psr.c | 219 +++++++++++++++++----- tools/libxl/libxl_types.idl | 22 +++ tools/xl/xl.h | 2 + tools/xl/xl_cmdtable.c | 12 ++ tools/xl/xl_psr.c | 280 ++++++++++++++++++++++------ xen/arch/x86/domctl.c | 81 ++++---- xen/arch/x86/psr.c | 358 +++++++++++++++++++++++++----------- 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 | 32 ++-- xen/include/public/sysctl.h | 28 ++- xen/xsm/flask/hooks.c | 8 +- xen/xsm/flask/policy/access_vectors | 8 +- 21 files changed, 1354 insertions(+), 360 deletions(-) create mode 100644 docs/features/intel_psr_mba.pandoc -- 1.9.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |