From: Will Cohen <wcohen@re...> - 2003-03-25 15:35:11
The function ppro_check_ctrs() in the linux-2.5.65 kernel contains the
/* We can't work out if we really handled an interrupt. We
* might have caught a *second* counter just after overflowing
* the interrupt for this counter then arrives
* and we don't find a counter that's overflowed, so we
* would return 0 and get dazed + confused. Instead we always
* assume we found an overflow. This sucks.
The procesors queue up performance monitoring nmi interrupts? How did
the previous version where the function only handled a single overflow fail?
From: John Levon <levon@mo...> - 2003-03-25 17:04:41
On Tue, Mar 25, 2003 at 10:34:57AM -0500, Will Cohen wrote:
> How did the previous version where the function only handled a single
> overflow fail?
Counter 0 would be handled, then return. Counter 1 had also overflowed,
but we didn't reset it. Therefore, counter 1 registered almost 0 events
when counter 0 was at a high rate.
The previous alternative to check all then return 1 if any overflowed
also doesn't work: it leads to countless "dazed and confused", as we
handle two counters at once, then receive the overflow interrupt for one
Get latest updates about Open Source Projects, Conferences and News.