summaryrefslogtreecommitdiff
path: root/arch/x86
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86')
-rw-r--r--arch/x86/kernel/cpu/perf_event.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/perf_event.c b/arch/x86/kernel/cpu/perf_event.c
index 045cc0bb4c17..1d665a0b202c 100644
--- a/arch/x86/kernel/cpu/perf_event.c
+++ b/arch/x86/kernel/cpu/perf_event.c
@@ -835,6 +835,10 @@ void hw_perf_enable(void)
event = cpuc->event_list[i];
hwc = &event->hw;
+ if (i < n_running &&
+ match_prev_assignment(hwc, cpuc, i))
+ continue;
+
if (hwc->idx == -1)
x86_assign_hw_event(event, cpuc, i);