Patchwork KVM: PPC: Book3S HV: use xics_wake_cpu only when defined

login
register
mail settings
Submitter Andreas Schwab
Date Dec. 30, 2013, 2:36 p.m.
Message ID <874n5qiewn.fsf@igel.home>
Download mbox | patch
Permalink /patch/305782/
State New
Headers show

Comments

Andreas Schwab - Dec. 30, 2013, 2:36 p.m.
Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
---
 arch/powerpc/kvm/book3s_hv.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
Alexander Graf - Jan. 9, 2014, 12:49 p.m.
On 30.12.2013, at 15:36, Andreas Schwab <schwab@linux-m68k.org> wrote:

> Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>

Thanks, applied kvm-ppc-queue with CC to stable.

Please keep in mind that the Apple G5 can not execute HV KVM.


Alex

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/arch/powerpc/kvm/book3s_hv.c b/arch/powerpc/kvm/book3s_hv.c
index b51d5db..edeac10 100644
--- a/arch/powerpc/kvm/book3s_hv.c
+++ b/arch/powerpc/kvm/book3s_hv.c
@@ -85,10 +85,13 @@  static void kvmppc_fast_vcpu_kick_hv(struct kvm_vcpu *vcpu)
 
 	/* CPU points to the first thread of the core */
 	if (cpu != me && cpu >= 0 && cpu < nr_cpu_ids) {
+#ifdef CONFIG_KVM_XICS
 		int real_cpu = cpu + vcpu->arch.ptid;
 		if (paca[real_cpu].kvm_hstate.xics_phys)
 			xics_wake_cpu(real_cpu);
-		else if (cpu_online(cpu))
+		else
+#endif
+		if (cpu_online(cpu))
 			smp_send_reschedule(cpu);
 	}
 	put_cpu();
@@ -1189,7 +1192,9 @@  static void kvmppc_start_thread(struct kvm_vcpu *vcpu)
 	smp_wmb();
 #if defined(CONFIG_PPC_ICP_NATIVE) && defined(CONFIG_SMP)
 	if (vcpu->arch.ptid) {
+#ifdef CONFIG_KVM_XICS
 		xics_wake_cpu(cpu);
+#endif
 		++vc->n_woken;
 	}
 #endif