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

From: Peter Zijlstra
Date: Mon Feb 06 2012 - 10:02:53 EST


On Mon, 2012-02-06 at 15:32 +0100, Stephane Eranian wrote:
> I am wondering why we stop and restart the code in perf_adjust_period()
> when it's called from __perf_event_overflow(). Isn't it supposed to be stopped
> already by the model specific interrupt handler. Looks like we do stop/start,
> just to get the reload aspect of start. Is that right?

Yes it is in order to deal with the case where an excessively long
period is programmed and we want to force load the new period without
having to wait for the old one to complete.

I hit that case several times with the adaptive code and events that
have very uneven rates.

--
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/