From: Andi Kleen <a...@linux.intel.com>

The recent change 75f80859b1 (... Robustify PEBS buffer drain)
causes lots of warnings on different CPUs before Skylake
when running PEBS intensive workloads.

They can have a zero status field in the PEBS record when
PEBS is racing with clearing of GLOBAl_STATUS.

This also can cause hangs (it seems there are still
problems with printk in NMI)

Disable the warning, but still ignore the record.

Signed-off-by: Andi Kleen <a...@linux.intel.com>
---
 arch/x86/kernel/cpu/perf_event_intel_ds.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/arch/x86/kernel/cpu/perf_event_intel_ds.c 
b/arch/x86/kernel/cpu/perf_event_intel_ds.c
index 7f11784..da294de 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_ds.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_ds.c
@@ -1237,10 +1237,7 @@ static void intel_pmu_drain_pebs_nhm(struct pt_regs 
*iregs)
 
                bit = find_first_bit((unsigned long *)&pebs_status,
                                        x86_pmu.max_pebs_events);
-               if (WARN(bit >= x86_pmu.max_pebs_events,
-                        "PEBS record without PEBS event! status=%Lx 
pebs_enabled=%Lx active_mask=%Lx",
-                        (unsigned long long)p->status, (unsigned long 
long)cpuc->pebs_enabled,
-                        *(unsigned long long *)cpuc->active_mask))
+               if (bit >= x86_pmu.max_pebs_events)
                        continue;
 
                /*
-- 
2.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to