diff options
-rw-r--r-- | arch/x86/kernel/cpu/perf_event_knc.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/arch/x86/kernel/cpu/perf_event_knc.c b/arch/x86/kernel/cpu/perf_event_knc.c index 73bcfbdedd50..f3a2af41552d 100644 --- a/arch/x86/kernel/cpu/perf_event_knc.c +++ b/arch/x86/kernel/cpu/perf_event_knc.c | |||
@@ -173,26 +173,22 @@ static void knc_pmu_enable_all(int added) | |||
173 | static inline void | 173 | static inline void |
174 | knc_pmu_disable_event(struct perf_event *event) | 174 | knc_pmu_disable_event(struct perf_event *event) |
175 | { | 175 | { |
176 | struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events); | ||
177 | struct hw_perf_event *hwc = &event->hw; | 176 | struct hw_perf_event *hwc = &event->hw; |
178 | u64 val; | 177 | u64 val; |
179 | 178 | ||
180 | val = hwc->config; | 179 | val = hwc->config; |
181 | if (cpuc->enabled) | 180 | val &= ~ARCH_PERFMON_EVENTSEL_ENABLE; |
182 | val &= ~ARCH_PERFMON_EVENTSEL_ENABLE; | ||
183 | 181 | ||
184 | (void)wrmsrl_safe(hwc->config_base + hwc->idx, val); | 182 | (void)wrmsrl_safe(hwc->config_base + hwc->idx, val); |
185 | } | 183 | } |
186 | 184 | ||
187 | static void knc_pmu_enable_event(struct perf_event *event) | 185 | static void knc_pmu_enable_event(struct perf_event *event) |
188 | { | 186 | { |
189 | struct cpu_hw_events *cpuc = &__get_cpu_var(cpu_hw_events); | ||
190 | struct hw_perf_event *hwc = &event->hw; | 187 | struct hw_perf_event *hwc = &event->hw; |
191 | u64 val; | 188 | u64 val; |
192 | 189 | ||
193 | val = hwc->config; | 190 | val = hwc->config; |
194 | if (cpuc->enabled) | 191 | val |= ARCH_PERFMON_EVENTSEL_ENABLE; |
195 | val |= ARCH_PERFMON_EVENTSEL_ENABLE; | ||
196 | 192 | ||
197 | (void)wrmsrl_safe(hwc->config_base + hwc->idx, val); | 193 | (void)wrmsrl_safe(hwc->config_base + hwc->idx, val); |
198 | } | 194 | } |