Subject: Re: [powerpc/nmi: RFC 2/2] Keep interrupts enabled even on soft disable

From: Balbir Singh <[email-masked]>
Date: Tue, 13 Dec 2016 14:28:09 +1100

On Mon, 2016-12-12 at 09:24 -0600, Benjamin Herrenschmidt wrote:
> On Mon, 2016-12-12 at 23:31 +1000, Nicholas Piggin wrote:
> > Otherwise, this looks nice if it does the right thing with the
> > interrupt
> > controller. It hasn't taken a lot of lines to implement which is
> > very
> > cool.
> 
> We might want to be a bit careful. It will work with XICS fine, but
> it
> might be trickier with a controller that needs explicit masking
> of the just received interrupts like some of the old mac ones. Or
> MPIC
> that you haven't modified to flatten the priorities etc....
> 
> Also lazy masking is ppc64 only but irc.c and time.c are shared.
> 
> I think we need to make this an "opt-in" based on some bit set by the
> platform or the PIC, possibly in ppc_md.
> 

Even though I'm using ppc_md.get_irq() the routine is called
only from exception64s.S, I can make the code conditional on
PPC_XICS. When we exploit the xive bits, we can add support for
that as well.

> Also note that there's already a PACA field to "recover" an interrupt
> snatched by KVM, though it's XICS specific, while your approach is
> more
> generic, you may want to merge the two. Talk to Paulus.
>

That is specific to KVM for kvm_interrupt_hv and kvm has a referecne to
the xics as well and within it, saved_xirr is tracked

Thanks for the reviews,
Balbir