diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2010-03-08 07:57:14 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-03-10 07:23:37 -0500 |
commit | d329527e47851f84b1e7944ed9601205f35f1b93 (patch) | |
tree | 15bd3e3ca7524f160cf1b6ddc5769b38abadcc40 /arch | |
parent | 2df202bf7520eaffcbfb07e45dfa3cfb0aeee2c0 (diff) |
perf, x86: Reorder intel_pmu_enable_all()
The documentation says we have to enable PEBS before we enable the PMU
proper.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Arnaldo Carvalho de Melo <acme@infradead.org>
Cc: paulus@samba.org
Cc: eranian@google.com
Cc: robert.richter@amd.com
Cc: fweisbec@gmail.com
LKML-Reference: <new-submission>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kernel/cpu/perf_event_intel.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/arch/x86/kernel/cpu/perf_event_intel.c b/arch/x86/kernel/cpu/perf_event_intel.c index c135ed735b22..d3e2424069a7 100644 --- a/arch/x86/kernel/cpu/perf_event_intel.c +++ b/arch/x86/kernel/cpu/perf_event_intel.c | |||
@@ -487,6 +487,8 @@ static void intel_pmu_enable_all(void) | |||
487 | { | 487 | { |
488 | struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events); | 488 | struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events); |
489 | 489 | ||
490 | intel_pmu_pebs_enable_all(); | ||
491 | intel_pmu_lbr_enable_all(); | ||
490 | wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, x86_pmu.intel_ctrl); | 492 | wrmsrl(MSR_CORE_PERF_GLOBAL_CTRL, x86_pmu.intel_ctrl); |
491 | 493 | ||
492 | if (test_bit(X86_PMC_IDX_FIXED_BTS, cpuc->active_mask)) { | 494 | if (test_bit(X86_PMC_IDX_FIXED_BTS, cpuc->active_mask)) { |
@@ -498,9 +500,6 @@ static void intel_pmu_enable_all(void) | |||
498 | 500 | ||
499 | intel_pmu_enable_bts(event->hw.config); | 501 | intel_pmu_enable_bts(event->hw.config); |
500 | } | 502 | } |
501 | |||
502 | intel_pmu_pebs_enable_all(); | ||
503 | intel_pmu_lbr_enable_all(); | ||
504 | } | 503 | } |
505 | 504 | ||
506 | static inline u64 intel_pmu_get_status(void) | 505 | static inline u64 intel_pmu_get_status(void) |