From mboxrd@z Thu Jan 1 00:00:00 1970 From: He Chen Subject: [PATCH v3 0/4] Intel Code and Data Prioritization (CDP) feature enabling Date: Mon, 14 Sep 2015 11:27:03 +0800 Message-ID: <1442201227-8610-1-git-send-email-he.chen@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1ZbKPk-0006oR-Aq for xen-devel@lists.xenproject.org; Mon, 14 Sep 2015 03:26:44 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xenproject.org Cc: wei.liu2@citrix.com, ian.campbell@citrix.com, stefano.stabellini@eu.citrix.com, andrew.cooper3@citrix.com, ian.jackson@eu.citrix.com, jbeulich@suse.com, chao.p.peng@linux.intel.com, keir@xen.org List-Id: xen-devel@lists.xenproject.org Changes in v3: - x86: remove redundant CDP field in cat_socket_enable (suggested by Chao) - tools: simplify CBM setting function in tools (suggested by Jan) - docs: Add boot parameter description (suggested by Chao & Ian) - code style Changes in v2: - x86: Enable CDP by boot parameter instead of enabling/disabling CDP at runtime (suggested by Andrew) - tools: remove psr-cat-cdp-enable/disable xl commands - code style Code/Data Prioritization(CDP) is offered in Intel Broadwell and later server platforms, which is an extension of CAT. CDP enables isolation and separate prioritization of code and data fetches to the L3 cache in a software configurable manner, which can enable workload prioritization and tuning of cache capacity to the characteristics of the workload. CDP extends Cache Allocation Technology (CAT) by providing separate code and data capacity bit masks(CBM) per Class of Service (COS). CDP is used on VM basis in the Xen implementation. More information about CDP, please refer to Intel SDM, Volumn 3, section 17.16 http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf This patch series enables CDP feature in Xen based on CAT code, and extends CBM operation functions to support CDP. For all the changes, please see in each patch. This patchset has been tested on Intel Broadwell server platform. To make this patchset better, any comment or suggestion is welcomed, I would really appreciate it. Thanks He Chen (4): x86: Support enable CDP by boot parameter and add get CDP status x86: add domctl cmd to set/get CDP code/data CBM tools: add tools support for Intel CDP docs: add document to introduce CDP command docs/man/xl.pod.1 | 14 +++ docs/misc/xen-command-line.markdown | 8 +- docs/misc/xl-psr.markdown | 42 ++++++- tools/libxc/include/xenctrl.h | 7 +- tools/libxc/xc_psr.c | 17 ++- tools/libxl/libxl.h | 1 + tools/libxl/libxl_psr.c | 20 ++- tools/libxl/libxl_types.idl | 3 + tools/libxl/xl_cmdimpl.c | 49 ++++++-- tools/libxl/xl_cmdtable.c | 3 + xen/arch/x86/domctl.c | 32 ++++- xen/arch/x86/psr.c | 240 +++++++++++++++++++++++++++++------- xen/arch/x86/sysctl.c | 5 +- xen/include/asm-x86/msr-index.h | 3 + xen/include/asm-x86/psr.h | 23 +++- xen/include/public/domctl.h | 4 + xen/include/public/sysctl.h | 2 + 17 files changed, 399 insertions(+), 74 deletions(-) -- 1.9.1