powerpc/powernv: Fixes for hypervisor doorbell handling
authorPaul Mackerras <paulus@samba.org>
Thu, 19 Mar 2015 08:29:01 +0000 (19:29 +1100)
committerMichael Ellerman <mpe@ellerman.id.au>
Fri, 20 Mar 2015 03:51:53 +0000 (14:51 +1100)
commit755563bc79c764c90b9f44db5e4fe6c556d3440c
treecfd171d1144b36cfcfac76685ad284fb54589259
parent06e5801b8cb3fc057d88cb4dc03c0b64b2744cda
powerpc/powernv: Fixes for hypervisor doorbell handling

Since we can now use hypervisor doorbells for host IPIs, this makes
sure we clear the host IPI flag when taking a doorbell interrupt, and
clears any pending doorbell IPI in pnv_smp_cpu_kill_self() (as we
already do for IPIs sent via the XICS interrupt controller).  Otherwise
if there did happen to be a leftover pending doorbell interrupt for
an offline CPU thread for any reason, it would prevent that thread from
going into a power-saving mode; it would instead keep waking up because
of the interrupt.

Signed-off-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
arch/powerpc/include/asm/ppc-opcode.h
arch/powerpc/include/asm/reg.h
arch/powerpc/kernel/dbell.c
arch/powerpc/platforms/powernv/smp.c