diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c index d034f1e0b12454ddcefda79ab784697aa3954a2a..f9958ad4d33534144a17713470039012c7b9e8ec 100644 --- a/arch/x86/events/intel/core.c +++ b/arch/x86/events/intel/core.c @@ -3068,7 +3068,7 @@ static int intel_pmu_hw_config(struct perf_event *event) return ret; if (event->attr.precise_ip) { - if (!event->attr.freq) { + if (!(event->attr.freq || event->attr.wakeup_events)) { event->hw.flags |= PERF_X86_EVENT_AUTO_RELOAD; if (!(event->attr.sample_type & ~intel_pmu_large_pebs_flags(event)))