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