mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 1/2] Revert "perf/x86/intel/uncore: Remove SBOX support for Broadwell server"
@ 2016-11-15 16:56 Oskar Senft
  2016-11-15 16:56 ` [PATCH 2/2] perf/x86/intel/uncore: Fix SBOX support for Broadwell CPUs Oskar Senft
  0 siblings, 1 reply; 3+ messages in thread
From: Oskar Senft @ 2016-11-15 16:56 UTC (permalink / raw)
  To: linux-kernel; +Cc: kan.liang, mark, Oskar Senft

This reverts commit 3b94a891667c ("perf/x86/intel/uncore: Remove SBOX
support for Broadwell server"). Note that this commit will cause a GP
fault during boot on Broadwell CPUs that do not have SBOXes. This is in
preparation for a follow-up change which fixes the SBOX support for
Broadwell CPUs.

Signed-off-by: Oskar Senft <osk@google.com>
---
 arch/x86/events/intel/uncore_snbep.c | 21 +++++++++++++++++++++
 1 file changed, 21 insertions(+)

diff --git a/arch/x86/events/intel/uncore_snbep.c b/arch/x86/events/intel/uncore_snbep.c
index 2724277..bcb54d7 100644
--- a/arch/x86/events/intel/uncore_snbep.c
+++ b/arch/x86/events/intel/uncore_snbep.c
@@ -3028,10 +3028,27 @@ static struct intel_uncore_type bdx_uncore_cbox = {
 	.format_group		= &hswep_uncore_cbox_format_group,
 };
 
+static struct intel_uncore_type bdx_uncore_sbox = {
+	.name			= "sbox",
+	.num_counters		= 4,
+	.num_boxes		= 4,
+	.perf_ctr_bits		= 48,
+	.event_ctl		= HSWEP_S0_MSR_PMON_CTL0,
+	.perf_ctr		= HSWEP_S0_MSR_PMON_CTR0,
+	.event_mask		= HSWEP_S_MSR_PMON_RAW_EVENT_MASK,
+	.box_ctl		= HSWEP_S0_MSR_PMON_BOX_CTL,
+	.msr_offset		= HSWEP_SBOX_MSR_OFFSET,
+	.ops			= &hswep_uncore_sbox_msr_ops,
+	.format_group		= &hswep_uncore_sbox_format_group,
+};
+
+#define BDX_MSR_UNCORE_SBOX	3
+
 static struct intel_uncore_type *bdx_msr_uncores[] = {
 	&bdx_uncore_ubox,
 	&bdx_uncore_cbox,
 	&hswep_uncore_pcu,
+	&bdx_uncore_sbox,
 	NULL,
 };
 
@@ -3040,6 +3057,10 @@ void bdx_uncore_cpu_init(void)
 	if (bdx_uncore_cbox.num_boxes > boot_cpu_data.x86_max_cores)
 		bdx_uncore_cbox.num_boxes = boot_cpu_data.x86_max_cores;
 	uncore_msr_uncores = bdx_msr_uncores;
+
+	/* BDX-DE doesn't have SBOX */
+	if (boot_cpu_data.x86_model == 86)
+		uncore_msr_uncores[BDX_MSR_UNCORE_SBOX] = NULL;
 }
 
 static struct intel_uncore_type bdx_uncore_ha = {
-- 
2.8.0.rc3.226.g39d4020

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

end of thread, other threads:[~2016-11-15 17:07 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-11-15 16:56 [PATCH 1/2] Revert "perf/x86/intel/uncore: Remove SBOX support for Broadwell server" Oskar Senft
2016-11-15 16:56 ` [PATCH 2/2] perf/x86/intel/uncore: Fix SBOX support for Broadwell CPUs Oskar Senft
2016-11-15 17:07   ` Liang, Kan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome