aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKan Liang <kan.liang@linux.intel.com>2018-03-08 21:15:42 -0500
committerIngo Molnar <mingo@kernel.org>2018-07-25 05:50:50 -0400
commita38b0ba1b7d2e7a6d19877540240e8a4352fc93c (patch)
tree596ec808e03201ae53a5f83050956a382705a676
parentec71a398c1bf6d8188cb24ebab6f5202523d95e1 (diff)
perf/x86/intel: Support Extended PEBS for Goldmont Plus
Enable the extended PEBS for Goldmont Plus. There is no specific PEBS constrains for Goldmont Plus. Removing the pebs_constraints for Goldmont Plus. Signed-off-by: Kan Liang <kan.liang@linux.intel.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Stephane Eranian <eranian@google.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Vince Weaver <vincent.weaver@maine.edu> Cc: acme@kernel.org Link: http://lkml.kernel.org/r/20180309021542.11374-4-kan.liang@linux.intel.com Signed-off-by: Ingo Molnar <mingo@kernel.org>
-rw-r--r--arch/x86/events/intel/core.c2
-rw-r--r--arch/x86/events/intel/ds.c6
2 files changed, 1 insertions, 7 deletions
diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c
index b1a49a108a59..035c37481f57 100644
--- a/arch/x86/events/intel/core.c
+++ b/arch/x86/events/intel/core.c
@@ -4077,7 +4077,6 @@ __init int intel_pmu_init(void)
4077 intel_pmu_lbr_init_skl(); 4077 intel_pmu_lbr_init_skl();
4078 4078
4079 x86_pmu.event_constraints = intel_slm_event_constraints; 4079 x86_pmu.event_constraints = intel_slm_event_constraints;
4080 x86_pmu.pebs_constraints = intel_glp_pebs_event_constraints;
4081 x86_pmu.extra_regs = intel_glm_extra_regs; 4080 x86_pmu.extra_regs = intel_glm_extra_regs;
4082 /* 4081 /*
4083 * It's recommended to use CPU_CLK_UNHALTED.CORE_P + NPEBS 4082 * It's recommended to use CPU_CLK_UNHALTED.CORE_P + NPEBS
@@ -4087,6 +4086,7 @@ __init int intel_pmu_init(void)
4087 x86_pmu.pebs_prec_dist = true; 4086 x86_pmu.pebs_prec_dist = true;
4088 x86_pmu.lbr_pt_coexist = true; 4087 x86_pmu.lbr_pt_coexist = true;
4089 x86_pmu.flags |= PMU_FL_HAS_RSP_1; 4088 x86_pmu.flags |= PMU_FL_HAS_RSP_1;
4089 x86_pmu.flags |= PMU_FL_PEBS_ALL;
4090 x86_pmu.get_event_constraints = glp_get_event_constraints; 4090 x86_pmu.get_event_constraints = glp_get_event_constraints;
4091 x86_pmu.cpu_events = glm_events_attrs; 4091 x86_pmu.cpu_events = glm_events_attrs;
4092 /* Goldmont Plus has 4-wide pipeline */ 4092 /* Goldmont Plus has 4-wide pipeline */
diff --git a/arch/x86/events/intel/ds.c b/arch/x86/events/intel/ds.c
index 595b96ae8a00..b7b01d762d32 100644
--- a/arch/x86/events/intel/ds.c
+++ b/arch/x86/events/intel/ds.c
@@ -713,12 +713,6 @@ struct event_constraint intel_glm_pebs_event_constraints[] = {
713 EVENT_CONSTRAINT_END 713 EVENT_CONSTRAINT_END
714}; 714};
715 715
716struct event_constraint intel_glp_pebs_event_constraints[] = {
717 /* Allow all events as PEBS with no flags */
718 INTEL_ALL_EVENT_CONSTRAINT(0, 0xf),
719 EVENT_CONSTRAINT_END
720};
721
722struct event_constraint intel_nehalem_pebs_event_constraints[] = { 716struct event_constraint intel_nehalem_pebs_event_constraints[] = {
723 INTEL_PLD_CONSTRAINT(0x100b, 0xf), /* MEM_INST_RETIRED.* */ 717 INTEL_PLD_CONSTRAINT(0x100b, 0xf), /* MEM_INST_RETIRED.* */
724 INTEL_FLAGS_EVENT_CONSTRAINT(0x0f, 0xf), /* MEM_UNCORE_RETIRED.* */ 718 INTEL_FLAGS_EVENT_CONSTRAINT(0x0f, 0xf), /* MEM_UNCORE_RETIRED.* */