Re: WARNING: at arch/x86/kernel/cpu/perf_event.c:989

From: Peter Zijlstra
Date: Mon Feb 06 2012 - 15:58:16 EST


On Mon, 2012-02-06 at 21:44 +0100, Stephane Eranian wrote:
> Which is pointing to the Intel specific:
>
> intel_pmu_handle_irq()
> again:
> intel_pmu_ack_status(status);
> if (++loops > 100) {
> WARN_ONCE(1, "perfevents: irq loop stuck!\n");
> perf_event_print_debug();
> intel_pmu_reset();
> goto done;
> }
>
> We are in a constant interrupt loop for a reason I don't yet understand.
> Sure we have two counters going, bu given the callstack, one is being
> stopped.
>
> I know we talked about that a couple of weeks back, but after all, it may
> be that it is not possible to run the frequency adjustment code without
> stopping the entire PMU because of risk of interrupts. But it is not clear
> to me what's causing this at this point.

There's Errata's on this, see AAK157 (SNB) BD106 (WSM) AAK157 (NHM).

Ingo and I talked about a 'fix' for that based on the text in the SNB
errata which explains why the reset works. Ingo I was under the
impression you were going to implement that?

> I suggest we still apply my patch to fix the x86_pmu_start() first, then
> I will submit a second patch to fix that one. Agreed?

Yes.

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