Commit-ID: 414dd2b4732949ddc972c2592a13c799434249c6 Gitweb: https://git.kernel.org/tip/414dd2b4732949ddc972c2592a13c799434249c6 Author: Reinette Chatre <reinette.cha...@intel.com> AuthorDate: Fri, 22 Jun 2018 15:42:00 -0700 Committer: Thomas Gleixner <t...@linutronix.de> CommitDate: Sat, 23 Jun 2018 13:03:42 +0200
x86/intel_rdt: Introduce new "exclusive" mode At the moment all allocations are shareable. There is no way for a user to designate that an allocation associated with a resource group cannot be shared by another. Introduce the new mode "exclusive". When a resource group is marked as such it implies that no overlap is allowed between its allocation and that of another resource group. Signed-off-by: Reinette Chatre <reinette.cha...@intel.com> Signed-off-by: Thomas Gleixner <t...@linutronix.de> Cc: fenghua...@intel.com Cc: tony.l...@intel.com Cc: vikas.shiva...@linux.intel.com Cc: gavin.hind...@intel.com Cc: jithu.jos...@intel.com Cc: dave.han...@intel.com Cc: h...@zytor.com Link: https://lkml.kernel.org/r/f6d24672a4280fe3b24cd2da9b5f50214439c1af.1529706536.git.reinette.cha...@intel.com --- arch/x86/kernel/cpu/intel_rdt.h | 2 ++ arch/x86/kernel/cpu/intel_rdt_rdtgroup.c | 1 + 2 files changed, 3 insertions(+) diff --git a/arch/x86/kernel/cpu/intel_rdt.h b/arch/x86/kernel/cpu/intel_rdt.h index f2fbf4059b3f..c9033fd774d5 100644 --- a/arch/x86/kernel/cpu/intel_rdt.h +++ b/arch/x86/kernel/cpu/intel_rdt.h @@ -83,6 +83,7 @@ enum rdt_group_type { /** * enum rdtgrp_mode - Mode of a RDT resource group * @RDT_MODE_SHAREABLE: This resource group allows sharing of its allocations + * @RDT_MODE_EXCLUSIVE: No sharing of this resource group's allocations allowed * * The mode of a resource group enables control over the allowed overlap * between allocations associated with different resource groups (classes @@ -91,6 +92,7 @@ enum rdt_group_type { */ enum rdtgrp_mode { RDT_MODE_SHAREABLE = 0, + RDT_MODE_EXCLUSIVE, /* Must be last */ RDT_NUM_MODES, diff --git a/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c b/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c index 80ac09cf978b..910febef55e8 100644 --- a/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c +++ b/arch/x86/kernel/cpu/intel_rdt_rdtgroup.c @@ -161,6 +161,7 @@ enum rdtgrp_mode rdtgroup_mode_by_closid(int closid) static const char * const rdt_mode_str[] = { [RDT_MODE_SHAREABLE] = "shareable", + [RDT_MODE_EXCLUSIVE] = "exclusive", }; /**