eeh-powernv.c: Unbalanced IRQ warning
Daniel Axtens
dja at axtens.net
Tue Jul 28 11:56:31 AEST 2015
Hi Alistair and Gavin,
The patch from Alistair fixes my issue. Thanks heaps!
Alistair, are you right to post that formally?
Regards,
Daniel
On Tue, 2015-07-28 at 11:28 +1000, Gavin Shan wrote:
> On Tue, Jul 28, 2015 at 11:14:51AM +1000, Alistair Popple wrote:
> >Hi Daniel,
> >
> >I see the problem - pnv_eeh_next_error() re-enables the interrupt but it gets
> >called from a loop if there are more outstanding events to process. The most
> >obvious solution would be to do this check before enabling interrupts:
> >
> > if (ret == EEH_NEXT_ERR_NONE && eeh_enabled())
> >
> >instead of:
> >
> > if (eeh_enabled())
> >
> >This should work fine so long as pnv_eeh_next_error() is called continuously
> >until is returns either EEH_NEXT_ERR_NONE or another value which signals that
> >pnv_eeh_next_error() should never be called again. As far as I can tell this
> >looks to be true (perhaps Gavin can confirm?)
> >
>
> Yeah, I confirmed. The way that Alistair fixes the issue is simple and more
> precise. Please try his fix and ignore the one I sent couple of minutes
> before.
>
> Thanks,
> Gavin
>
> >Would you mind trying the below patch and seeing if it fixes the problem?
> >Thanks!
> >
> >-- >8 --
> >>From 6eeed1d6dd25e8cf6bfe3423dc50ff855d1cbc42 Mon Sep 17 00:00:00 2001
> >From: Alistair Popple <alistair at popple.id.au>
> >
> >---
> > arch/powerpc/platforms/powernv/eeh-powernv.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> >diff --git a/arch/powerpc/platforms/powernv/eeh-powernv.c b/arch/powerpc/platforms/powernv/eeh-powernv.c
> >index ca825ec..ff41c03 100644
> >--- a/arch/powerpc/platforms/powernv/eeh-powernv.c
> >+++ b/arch/powerpc/platforms/powernv/eeh-powernv.c
> >@@ -1478,7 +1478,7 @@ static int pnv_eeh_next_error(struct eeh_pe **pe)
> > }
> >
> > /* Unmask the event */
> >- if (eeh_enabled())
> >+ if (ret == EEH_NEXT_ERR_NONE && eeh_enabled())
> > enable_irq(eeh_event_irq);
> >
> > return ret;
> >--
> >1.8.3.2
> >
> >
>
--
Regards,
Daniel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 860 bytes
Desc: This is a digitally signed message part
URL: <http://lists.ozlabs.org/pipermail/linuxppc-dev/attachments/20150728/f86aaf80/attachment-0001.sig>
More information about the Linuxppc-dev
mailing list