[PATCH 2/3] ppc/kvm: Set the runlatch bit of a CPU just before starting guest

Preeti U Murthy preeti at linux.vnet.ibm.com
Fri Apr 11 20:31:58 EST 2014

The secondary threads in the core are kept offline before launching guests
in kvm on powerpc: "371fefd6f2dc4666:KVM: PPC: Allow book3s_hv guests to use
SMT processor modes."

Hence their runlatch bits are cleared. When the secondary threads are called
in to start a guest, their runlatch bits need to be set to indicate that they
are busy. The primary thread has its runlatch bit set though, but there is no
harm in setting this bit once again. Hence set the runlatch bit for all
threads before they start guest.

Signed-off-by: Preeti U Murthy <preeti at linux.vnet.ibm.com>
Acked-by: Paul Mackerras <paulus at samba.org>
Reviewed-by: Srivatsa S. Bhat <srivatsa.bhat at linux.vnet.ibm.com>

 arch/powerpc/kvm/book3s_hv_rmhandlers.S |    6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
index ffbb871..b254075 100644
--- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
+++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
@@ -242,6 +242,12 @@ kvm_novcpu_exit:
 	.globl	kvm_start_guest
+	/* Set runlatch bit the minute you wake up from nap */
+	mfspr	r1, SPRN_CTRLF
+	ori 	r1, r1, 1
+	mtspr	SPRN_CTRLT, r1
 	ld	r2,PACATOC(r13)

More information about the Linuxppc-dev mailing list