* [PATCH] KVM: PPC: Book3S HV: Make sure to load LPID for radix VCPUs
@ 2019-05-13 4:58 Paul Mackerras
2019-05-14 1:11 ` Suraj Jitindar Singh
0 siblings, 1 reply; 2+ messages in thread
From: Paul Mackerras @ 2019-05-13 4:58 UTC (permalink / raw)
To: kvm; +Cc: kvm-ppc
Commit 70ea13f6e609 ("KVM: PPC: Book3S HV: Flush TLB on secondary radix
threads", 2019-04-29) aimed to make radix guests that are using the
real-mode entry path load the LPID register and flush the TLB in the
same place where those things are done for HPT guests. However, it
omitted to remove a branch which branches around that code for radix
guests. The result is that with indep_thread_mode = N, radix guests
don't run correctly. (With indep_threads_mode = Y, which is the
default, radix guests use a different entry path.)
This removes the offending branch, and also the load and compare that
the branch depends on, since the cr7 setting is now unused.
Reported-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
Fixes: 70ea13f6e609 ("KVM: PPC: Book3S HV: Flush TLB on secondary radix threads")
Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
---
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 6 ------
1 file changed, 6 deletions(-)
diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
index ad1fc01..ad7bee9 100644
--- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
+++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
@@ -581,11 +581,8 @@ kvmppc_hv_entry:
1:
#endif
- /* Use cr7 as an indication of radix mode */
ld r5, HSTATE_KVM_VCORE(r13)
ld r9, VCORE_KVM(r5) /* pointer to struct kvm */
- lbz r0, KVM_RADIX(r9)
- cmpwi cr7, r0, 0
/*
* POWER7/POWER8 host -> guest partition switch code.
@@ -608,9 +605,6 @@ kvmppc_hv_entry:
cmpwi r6,0
bne 10f
- /* Radix has already switched LPID and flushed core TLB */
- bne cr7, 22f
-
lwz r7,KVM_LPID(r9)
BEGIN_FTR_SECTION
ld r6,KVM_SDR1(r9)
--
2.7.4
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] KVM: PPC: Book3S HV: Make sure to load LPID for radix VCPUs
2019-05-13 4:58 [PATCH] KVM: PPC: Book3S HV: Make sure to load LPID for radix VCPUs Paul Mackerras
@ 2019-05-14 1:11 ` Suraj Jitindar Singh
0 siblings, 0 replies; 2+ messages in thread
From: Suraj Jitindar Singh @ 2019-05-14 1:11 UTC (permalink / raw)
To: Paul Mackerras, kvm; +Cc: kvm-ppc
On Mon, 2019-05-13 at 14:58 +1000, Paul Mackerras wrote:
> Commit 70ea13f6e609 ("KVM: PPC: Book3S HV: Flush TLB on secondary
> radix
> threads", 2019-04-29) aimed to make radix guests that are using the
> real-mode entry path load the LPID register and flush the TLB in the
> same place where those things are done for HPT guests. However, it
> omitted to remove a branch which branches around that code for radix
> guests. The result is that with indep_thread_mode = N, radix guests
> don't run correctly. (With indep_threads_mode = Y, which is the
> default, radix guests use a different entry path.)
>
> This removes the offending branch, and also the load and compare that
> the branch depends on, since the cr7 setting is now unused.
>
> Reported-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
> Fixes: 70ea13f6e609 ("KVM: PPC: Book3S HV: Flush TLB on secondary
> radix threads")
> Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
Tested-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
> ---
> arch/powerpc/kvm/book3s_hv_rmhandlers.S | 6 ------
> 1 file changed, 6 deletions(-)
>
> diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> index ad1fc01..ad7bee9 100644
> --- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> +++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
> @@ -581,11 +581,8 @@ kvmppc_hv_entry:
> 1:
> #endif
>
> - /* Use cr7 as an indication of radix mode */
> ld r5, HSTATE_KVM_VCORE(r13)
> ld r9, VCORE_KVM(r5) /* pointer to struct kvm
> */
> - lbz r0, KVM_RADIX(r9)
> - cmpwi cr7, r0, 0
>
> /*
> * POWER7/POWER8 host -> guest partition switch code.
> @@ -608,9 +605,6 @@ kvmppc_hv_entry:
> cmpwi r6,0
> bne 10f
>
> - /* Radix has already switched LPID and flushed core TLB */
> - bne cr7, 22f
> -
> lwz r7,KVM_LPID(r9)
> BEGIN_FTR_SECTION
> ld r6,KVM_SDR1(r9)
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-05-14 1:11 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-13 4:58 [PATCH] KVM: PPC: Book3S HV: Make sure to load LPID for radix VCPUs Paul Mackerras
2019-05-14 1:11 ` Suraj Jitindar Singh
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).