Corey, Patch applied.
I would like to remove the pfm_spin_*lock() macros. They don't have any current use and that would simplify the code and make it more readable. Moreover, it won't give reviewers another argument for saying perfmon is bloated. thanks. On Wed, May 21, 2008 at 2:40 AM, Corey Ashford <[EMAIL PROTECTED]> wrote: > Hello, > > Attached is a patch fixes a problem with the "lazy [aka soft] interrupt > disabling" mechanism in the perfmon2 port to the Power architecture. My > original solution of using wrapper macros for the spin_*lock* calls was > insufficient because interrupts needed to be locked out in more places than > perfmon2 itself (e.g. sched()). The solution in this patch is to change the > behavior of the interrupt handler so that it sets a cpu-specific flag, > clears the PMU interrupt, disables hardware interrupts and returns. When > interrupts are reenabled again, the flag is checked and the PMU interrupt is > set again. The special wrapper macros are no longer used. > > The upside of this change is that it doesn't require any changes to the > head_64.S file to change the wrapper used for the PMU exception, and should > also fix a potential problem with PMU interrupts being lost (I might have > seen this problem before, but I'm not positive). > > With this patch, there is still a problem with a kernel hang in a test case > I have that generates about 2000 interrupts per second, which then signal a > user-space thread. However, the behavior with this patch is improved > (doesn't hang as often) and I'm no longer seeing any problems with spin > locks. > > Please review it and let me know if you see any problems. > > Thanks for your consideration, > > - Corey > > -- > Corey Ashford > Software Engineer > IBM Linux Technology Center, Linux Toolchain > Beaverton, OR > 503-578-3507 > [EMAIL PROTECTED] > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > perfmon2-devel mailing list > perfmon2-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/perfmon2-devel > > ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ perfmon2-devel mailing list perfmon2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/perfmon2-devel