Messages in this thread | | | Subject | Re: Get rid of IRQF_DISABLED - (was [PATCH] genirq: warn about IRQF_SHARED|IRQF_DISABLED) | From | Benjamin Herrenschmidt <> | Date | Tue, 01 Dec 2009 08:42:11 +1100 |
| |
On Mon, 2009-11-30 at 22:31 +0100, Thomas Gleixner wrote:
> Are the perf events on power generally coming through the standard irq > handler code path and/or sensitive to local_irq_disable() ?
They are in HW yes. On ppc64, we do soft-disabling, which mean that we can still get the perf events within a local_irq_disable() region provided we don't get another interrupt within that region that forces us to hard disable so it would make the problem less bad I suppose.
> > I would suggest we timestamp the handlers in the core btw and warn > if > > they take too long so we get a chance to track down the bad guys. > > The hassle is to find a time which we think is appropriate as a > threshold which is of course depending on the cpu power of a > system. Also I wonder whether we'd need to make such a warning thing > aware of irq nesting.
But if we always disable interrupts while running the handlers, we don't nest right ?
Cheers, Ben.
| |