Messages in this thread | | | Date | Tue, 31 May 2011 12:39:37 -0400 (EDT) | From | Vince Weaver <> | Subject | Re: perf: [patch] regression with PERF_EVENT_IOC_REFRESH |
| |
On Tue, 31 May 2011, Peter Zijlstra wrote: > > IOC_REFRESH sets event->event_limit, not wakeup_events.
ahh, yes.
So it's a userspace "bug".
The test code called a "IOC_REFRESH, 3" whenever it got signalled. It didn't distinguish between whether it was a plain overflow or if it was a ring-buffer overflow (can it distinguish?).
Thus the watermark bug was confusing the user-space code into refreshing when it was not necessary.
> > I'm also bisecting the other problem I mentioned, the one where overflows > > are 10x too large on 3.0-rc1. I'm at work with a Nehalem machine so the > > bisect should go faster than the bisect I had to do on an atom machine > > this weekend. > > It wouldn't be the SIGIO fix would it?, with that every overflow > generates a SIGIO, not only the poll() wakeups. And ouch at bisecting > (or even building a kernel) on an Atom, those things are horridly slow.
Oh, it could be the SIGIO fix. I hadn't realized that got merged already.
And yes, bisect on atom is painful, but my alternatives were a 1.7GHz P4 (with small disk, so would have been over NFS), a 600MHz G3 iBook, or an armv6 machine. So atom it was.
Vince vweaver1@eecs.utk.edu
| |