Skip to contentSkip to conversation

perf/x86/intel/cstate: revise package C-state residency of SKL/KBL

PATCH New Harry Pan 1 participant 1 message Sep 1, 2017

Subsystems (2)
lore
Share & tools
lore

Harry Pan

author
#0 lore raw

PATCH 1/1 perf/x86/intel/cstate: revise package C-state residency of SKL/KBL

Despite Intel SDM vol-4 does not claim to have there MSRs, EDS of SKL/KBL do claim to have PC8/PC9/PC10 states, also these residency MSRs are visible through rdmsr.

This patch allows developers to calculate correct portions among various package C-states against total TSC ticks, and this would also align the events w/ Len Brown's turbostat metrics on SKL/KBL platforms.

---
 arch/x86/events/intel/cstate.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)
arch/x86/events/intel/cstate.c +7 -7
index 4cf100ff2a37..8f339635d22b 100644
@@ -75,15 +75,15 @@
  *			       Scope: Package (physical package)
  *	MSR_PKG_C8_RESIDENCY:  Package C8 Residency Counter.
  *			       perf code: 0x04
- *			       Available model: HSW ULT only
+ *			       Available model: HSW ULT,SKL,KBL
  *			       Scope: Package (physical package)
  *	MSR_PKG_C9_RESIDENCY:  Package C9 Residency Counter.
  *			       perf code: 0x05
- *			       Available model: HSW ULT only
+ *			       Available model: HSW ULT,SKL,KBL
  *			       Scope: Package (physical package)
  *	MSR_PKG_C10_RESIDENCY: Package C10 Residency Counter.
  *			       perf code: 0x06
- *			       Available model: HSW ULT, GLM
+ *			       Available model: HSW ULT,GLM,SKL,KBL
  *			       Scope: Package (physical package)
  *
  */
@@ -550,11 +550,11 @@ static const struct x86_cpu_id intel_cstates_match[] __initconst = {
 	X86_CSTATES_MODEL(INTEL_FAM6_BROADWELL_GT3E,   snb_cstates),
 	X86_CSTATES_MODEL(INTEL_FAM6_BROADWELL_X,      snb_cstates),
 
-	X86_CSTATES_MODEL(INTEL_FAM6_SKYLAKE_MOBILE,  snb_cstates),
-	X86_CSTATES_MODEL(INTEL_FAM6_SKYLAKE_DESKTOP, snb_cstates),
+	X86_CSTATES_MODEL(INTEL_FAM6_SKYLAKE_MOBILE,  hswult_cstates),
+	X86_CSTATES_MODEL(INTEL_FAM6_SKYLAKE_DESKTOP, hswult_cstates),
 
-	X86_CSTATES_MODEL(INTEL_FAM6_KABYLAKE_MOBILE,  snb_cstates),
-	X86_CSTATES_MODEL(INTEL_FAM6_KABYLAKE_DESKTOP, snb_cstates),
+	X86_CSTATES_MODEL(INTEL_FAM6_KABYLAKE_MOBILE,  hswult_cstates),
+	X86_CSTATES_MODEL(INTEL_FAM6_KABYLAKE_DESKTOP, hswult_cstates),
 
 	X86_CSTATES_MODEL(INTEL_FAM6_XEON_PHI_KNL, knl_cstates),
 	X86_CSTATES_MODEL(INTEL_FAM6_XEON_PHI_KNM, knl_cstates),
Signature · 1 line
2.12.2