Regression in RCU subsystem in latest mainline kernel
Rojhalat Ibrahim
imr at rtschenk.de
Mon Jun 17 23:21:15 EST 2013
On Friday 14 June 2013 22:17:34 Steven Rostedt wrote:
> On Sat, 2013-06-15 at 12:02 +1000, Benjamin Herrenschmidt wrote:
> > On Fri, 2013-06-14 at 17:06 -0400, Steven Rostedt wrote:
> > > I was pretty much able to reproduce this on my PA Semi PPC box. Funny
> > > thing is, when I type on the console, it makes progress. Anyway, it
> > > seems that powerpc has an issue with irq_work(). I'll try to get some
> > > time either tonight or next week to figure it out.
> >
> > Does this help ?
>
> It did for me. Rojhalat, did this fix your issue too?
>
FWIW, since the fix is already applied, but it fixes my problem too.
Rojhalat
> -- Steve
>
> > diff --git a/arch/powerpc/kernel/irq.c b/arch/powerpc/kernel/irq.c
> > index 5cbcf4d..ea185e0 100644
> > --- a/arch/powerpc/kernel/irq.c
> > +++ b/arch/powerpc/kernel/irq.c
> > @@ -162,7 +162,7 @@ notrace unsigned int __check_irq_replay(void)
> >
> > * in case we also had a rollover while hard disabled
> > */
> >
> > local_paca->irq_happened &= ~PACA_IRQ_DEC;
> >
> > - if (decrementer_check_overflow())
> > + if ((happened & PACA_IRQ_DEC) || decrementer_check_overflow())
> >
> > return 0x900;
> >
> > /* Finally check if an external interrupt happened */
> >
> > Cheers,
> > Ben.
More information about the Linuxppc-dev
mailing list