diff mbox

[2/2] powerpc/powernv: Properly set "host-ipi" on IPIs

Message ID 1486427736.4850.103.camel@kernel.crashing.org (mailing list archive)
State Accepted
Headers show

Commit Message

Benjamin Herrenschmidt Feb. 7, 2017, 12:35 a.m. UTC
Otherwise KVM will fail to pass them through to the host

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
 arch/powerpc/sysdev/xics/icp-opal.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Michael Ellerman Feb. 8, 2017, 9:31 a.m. UTC | #1
Benjamin Herrenschmidt <benh@kernel.crashing.org> writes:

> Otherwise KVM will fail to pass them through to the host

OK, so this is:

Fixes: d74361881f0d ("powerpc/xics: Add ICP OPAL backend")

But seeing as the KVM support is only going into v4.11, I won't tag it
for stable.

Paul do you want me to put this in the topic branch?

cheers
Michael Ellerman Feb. 9, 2017, 1:20 p.m. UTC | #2
On Tue, 2017-02-07 at 00:35:36 UTC, Benjamin Herrenschmidt wrote:
> Otherwise KVM will fail to pass them through to the host
> 
> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

Applied to powerpc fixes, thanks.

https://git.kernel.org/powerpc/c/f83e6862047e1e371bdc5d512dd6ca

cheers
diff mbox

Patch

diff --git a/arch/powerpc/sysdev/xics/icp-opal.c b/arch/powerpc/sysdev/xics/icp-opal.c
index c96c0cb..f9670ea 100644
--- a/arch/powerpc/sysdev/xics/icp-opal.c
+++ b/arch/powerpc/sysdev/xics/icp-opal.c
@@ -120,14 +120,16 @@  static void icp_opal_cause_ipi(int cpu, unsigned long data)
 {
 	int hw_cpu = get_hard_smp_processor_id(cpu);
 
+	kvmppc_set_host_ipi(cpu, 1);
 	opal_int_set_mfrr(hw_cpu, IPI_PRIORITY);
 }
 
 static irqreturn_t icp_opal_ipi_action(int irq, void *dev_id)
 {
-	int hw_cpu = hard_smp_processor_id();
+	int cpu = smp_processor_id();
 
-	opal_int_set_mfrr(hw_cpu, 0xff);
+	kvmppc_set_host_ipi(cpu, 0);
+	opal_int_set_mfrr(get_hard_smp_processor_id(cpu), 0xff);
 
 	return smp_ipi_demux();
 }