* [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
@ 2016-07-19 12:56 ` Marc Zyngier
0 siblings, 0 replies; 11+ messages in thread
From: Marc Zyngier @ 2016-07-19 12:56 UTC (permalink / raw)
To: kvmarm, kvm, linux-arm-kernel
Cc: Christoffer Dall, Paolo Bonzini, Radim Krčmář,
Tirumalesh Chalamarla
The kprobe enablement work has uncovered that changes made by
a guest to MDSCR_EL1 were propagated to the host when VHE was
enabled, leading to unexpected exception being delivered.
Moving this register to the list of registers that are always
context-switched fixes the issue.
Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
Cc: stable@vger.kernel.org #4.6
Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
---
v2: added missing Fixes and Cc-stable tags
arch/arm64/kvm/hyp/sysreg-sr.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/kvm/hyp/sysreg-sr.c b/arch/arm64/kvm/hyp/sysreg-sr.c
index 0f7c40e..9341376 100644
--- a/arch/arm64/kvm/hyp/sysreg-sr.c
+++ b/arch/arm64/kvm/hyp/sysreg-sr.c
@@ -27,8 +27,8 @@ static void __hyp_text __sysreg_do_nothing(struct kvm_cpu_context *ctxt) { }
/*
* Non-VHE: Both host and guest must save everything.
*
- * VHE: Host must save tpidr*_el[01], actlr_el1, sp0, pc, pstate, and
- * guest must save everything.
+ * VHE: Host must save tpidr*_el[01], actlr_el1, mdscr_el1, sp0, pc,
+ * pstate, and guest must save everything.
*/
static void __hyp_text __sysreg_save_common_state(struct kvm_cpu_context *ctxt)
@@ -37,6 +37,7 @@ static void __hyp_text __sysreg_save_common_state(struct kvm_cpu_context *ctxt)
ctxt->sys_regs[TPIDR_EL0] = read_sysreg(tpidr_el0);
ctxt->sys_regs[TPIDRRO_EL0] = read_sysreg(tpidrro_el0);
ctxt->sys_regs[TPIDR_EL1] = read_sysreg(tpidr_el1);
+ ctxt->sys_regs[MDSCR_EL1] = read_sysreg(mdscr_el1);
ctxt->gp_regs.regs.sp = read_sysreg(sp_el0);
ctxt->gp_regs.regs.pc = read_sysreg_el2(elr);
ctxt->gp_regs.regs.pstate = read_sysreg_el2(spsr);
@@ -61,7 +62,6 @@ static void __hyp_text __sysreg_save_state(struct kvm_cpu_context *ctxt)
ctxt->sys_regs[AMAIR_EL1] = read_sysreg_el1(amair);
ctxt->sys_regs[CNTKCTL_EL1] = read_sysreg_el1(cntkctl);
ctxt->sys_regs[PAR_EL1] = read_sysreg(par_el1);
- ctxt->sys_regs[MDSCR_EL1] = read_sysreg(mdscr_el1);
ctxt->gp_regs.sp_el1 = read_sysreg(sp_el1);
ctxt->gp_regs.elr_el1 = read_sysreg_el1(elr);
@@ -90,6 +90,7 @@ static void __hyp_text __sysreg_restore_common_state(struct kvm_cpu_context *ctx
write_sysreg(ctxt->sys_regs[TPIDR_EL0], tpidr_el0);
write_sysreg(ctxt->sys_regs[TPIDRRO_EL0], tpidrro_el0);
write_sysreg(ctxt->sys_regs[TPIDR_EL1], tpidr_el1);
+ write_sysreg(ctxt->sys_regs[MDSCR_EL1], mdscr_el1);
write_sysreg(ctxt->gp_regs.regs.sp, sp_el0);
write_sysreg_el2(ctxt->gp_regs.regs.pc, elr);
write_sysreg_el2(ctxt->gp_regs.regs.pstate, spsr);
@@ -114,7 +115,6 @@ static void __hyp_text __sysreg_restore_state(struct kvm_cpu_context *ctxt)
write_sysreg_el1(ctxt->sys_regs[AMAIR_EL1], amair);
write_sysreg_el1(ctxt->sys_regs[CNTKCTL_EL1], cntkctl);
write_sysreg(ctxt->sys_regs[PAR_EL1], par_el1);
- write_sysreg(ctxt->sys_regs[MDSCR_EL1], mdscr_el1);
write_sysreg(ctxt->gp_regs.sp_el1, sp_el1);
write_sysreg_el1(ctxt->gp_regs.elr_el1, elr);
--
2.1.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
@ 2016-07-19 12:56 ` Marc Zyngier
0 siblings, 0 replies; 11+ messages in thread
From: Marc Zyngier @ 2016-07-19 12:56 UTC (permalink / raw)
To: linux-arm-kernel
The kprobe enablement work has uncovered that changes made by
a guest to MDSCR_EL1 were propagated to the host when VHE was
enabled, leading to unexpected exception being delivered.
Moving this register to the list of registers that are always
context-switched fixes the issue.
Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
Cc: stable at vger.kernel.org #4.6
Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
---
v2: added missing Fixes and Cc-stable tags
arch/arm64/kvm/hyp/sysreg-sr.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/arm64/kvm/hyp/sysreg-sr.c b/arch/arm64/kvm/hyp/sysreg-sr.c
index 0f7c40e..9341376 100644
--- a/arch/arm64/kvm/hyp/sysreg-sr.c
+++ b/arch/arm64/kvm/hyp/sysreg-sr.c
@@ -27,8 +27,8 @@ static void __hyp_text __sysreg_do_nothing(struct kvm_cpu_context *ctxt) { }
/*
* Non-VHE: Both host and guest must save everything.
*
- * VHE: Host must save tpidr*_el[01], actlr_el1, sp0, pc, pstate, and
- * guest must save everything.
+ * VHE: Host must save tpidr*_el[01], actlr_el1, mdscr_el1, sp0, pc,
+ * pstate, and guest must save everything.
*/
static void __hyp_text __sysreg_save_common_state(struct kvm_cpu_context *ctxt)
@@ -37,6 +37,7 @@ static void __hyp_text __sysreg_save_common_state(struct kvm_cpu_context *ctxt)
ctxt->sys_regs[TPIDR_EL0] = read_sysreg(tpidr_el0);
ctxt->sys_regs[TPIDRRO_EL0] = read_sysreg(tpidrro_el0);
ctxt->sys_regs[TPIDR_EL1] = read_sysreg(tpidr_el1);
+ ctxt->sys_regs[MDSCR_EL1] = read_sysreg(mdscr_el1);
ctxt->gp_regs.regs.sp = read_sysreg(sp_el0);
ctxt->gp_regs.regs.pc = read_sysreg_el2(elr);
ctxt->gp_regs.regs.pstate = read_sysreg_el2(spsr);
@@ -61,7 +62,6 @@ static void __hyp_text __sysreg_save_state(struct kvm_cpu_context *ctxt)
ctxt->sys_regs[AMAIR_EL1] = read_sysreg_el1(amair);
ctxt->sys_regs[CNTKCTL_EL1] = read_sysreg_el1(cntkctl);
ctxt->sys_regs[PAR_EL1] = read_sysreg(par_el1);
- ctxt->sys_regs[MDSCR_EL1] = read_sysreg(mdscr_el1);
ctxt->gp_regs.sp_el1 = read_sysreg(sp_el1);
ctxt->gp_regs.elr_el1 = read_sysreg_el1(elr);
@@ -90,6 +90,7 @@ static void __hyp_text __sysreg_restore_common_state(struct kvm_cpu_context *ctx
write_sysreg(ctxt->sys_regs[TPIDR_EL0], tpidr_el0);
write_sysreg(ctxt->sys_regs[TPIDRRO_EL0], tpidrro_el0);
write_sysreg(ctxt->sys_regs[TPIDR_EL1], tpidr_el1);
+ write_sysreg(ctxt->sys_regs[MDSCR_EL1], mdscr_el1);
write_sysreg(ctxt->gp_regs.regs.sp, sp_el0);
write_sysreg_el2(ctxt->gp_regs.regs.pc, elr);
write_sysreg_el2(ctxt->gp_regs.regs.pstate, spsr);
@@ -114,7 +115,6 @@ static void __hyp_text __sysreg_restore_state(struct kvm_cpu_context *ctxt)
write_sysreg_el1(ctxt->sys_regs[AMAIR_EL1], amair);
write_sysreg_el1(ctxt->sys_regs[CNTKCTL_EL1], cntkctl);
write_sysreg(ctxt->sys_regs[PAR_EL1], par_el1);
- write_sysreg(ctxt->sys_regs[MDSCR_EL1], mdscr_el1);
write_sysreg(ctxt->gp_regs.sp_el1, sp_el1);
write_sysreg_el1(ctxt->gp_regs.elr_el1, elr);
--
2.1.4
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
2016-07-19 12:56 ` Marc Zyngier
@ 2016-07-21 13:17 ` Radim Krčmář
-1 siblings, 0 replies; 11+ messages in thread
From: Radim Krčmář @ 2016-07-21 13:17 UTC (permalink / raw)
To: Marc Zyngier
Cc: kvm, Tirumalesh Chalamarla, Paolo Bonzini, kvmarm, linux-arm-kernel
2016-07-19 13:56+0100, Marc Zyngier:
> The kprobe enablement work has uncovered that changes made by
> a guest to MDSCR_EL1 were propagated to the host when VHE was
> enabled, leading to unexpected exception being delivered.
>
> Moving this register to the list of registers that are always
> context-switched fixes the issue.
>
> Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
> Cc: stable@vger.kernel.org #4.6
> Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> ---
I would take this patch to 4.7 directly through the main tree.
Are your plans different?
Thanks.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
@ 2016-07-21 13:17 ` Radim Krčmář
0 siblings, 0 replies; 11+ messages in thread
From: Radim Krčmář @ 2016-07-21 13:17 UTC (permalink / raw)
To: linux-arm-kernel
2016-07-19 13:56+0100, Marc Zyngier:
> The kprobe enablement work has uncovered that changes made by
> a guest to MDSCR_EL1 were propagated to the host when VHE was
> enabled, leading to unexpected exception being delivered.
>
> Moving this register to the list of registers that are always
> context-switched fixes the issue.
>
> Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
> Cc: stable at vger.kernel.org #4.6
> Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> ---
I would take this patch to 4.7 directly through the main tree.
Are your plans different?
Thanks.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
2016-07-21 13:17 ` Radim Krčmář
(?)
@ 2016-07-21 13:24 ` Marc Zyngier
-1 siblings, 0 replies; 11+ messages in thread
From: Marc Zyngier @ 2016-07-21 13:24 UTC (permalink / raw)
To: Radim Krčmář
Cc: kvmarm, kvm, linux-arm-kernel, Christoffer Dall, Paolo Bonzini,
Tirumalesh Chalamarla
On Thu, 21 Jul 2016 15:17:20 +0200
Radim Krčmář <rkrcmar@redhat.com> wrote:
Hi Radim,
> 2016-07-19 13:56+0100, Marc Zyngier:
> > The kprobe enablement work has uncovered that changes made by
> > a guest to MDSCR_EL1 were propagated to the host when VHE was
> > enabled, leading to unexpected exception being delivered.
> >
> > Moving this register to the list of registers that are always
> > context-switched fixes the issue.
> >
> > Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
> > Cc: stable@vger.kernel.org #4.6
> > Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> > Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> > ---
>
> I would take this patch to 4.7 directly through the main tree.
> Are your plans different?
If you're happy to take it now, that works for me. I can either send a
PR right away, or you can apply it directly, whichever works best for
you.
Thanks,
M.
--
Jazz is not dead. It just smells funny.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
@ 2016-07-21 13:24 ` Marc Zyngier
0 siblings, 0 replies; 11+ messages in thread
From: Marc Zyngier @ 2016-07-21 13:24 UTC (permalink / raw)
To: Radim Krčmář
Cc: kvmarm, kvm, linux-arm-kernel, Christoffer Dall, Paolo Bonzini,
Tirumalesh Chalamarla
On Thu, 21 Jul 2016 15:17:20 +0200
Radim Krčmář <rkrcmar@redhat.com> wrote:
Hi Radim,
> 2016-07-19 13:56+0100, Marc Zyngier:
> > The kprobe enablement work has uncovered that changes made by
> > a guest to MDSCR_EL1 were propagated to the host when VHE was
> > enabled, leading to unexpected exception being delivered.
> >
> > Moving this register to the list of registers that are always
> > context-switched fixes the issue.
> >
> > Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
> > Cc: stable@vger.kernel.org #4.6
> > Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> > Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> > ---
>
> I would take this patch to 4.7 directly through the main tree.
> Are your plans different?
If you're happy to take it now, that works for me. I can either send a
PR right away, or you can apply it directly, whichever works best for
you.
Thanks,
M.
--
Jazz is not dead. It just smells funny.
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
@ 2016-07-21 13:24 ` Marc Zyngier
0 siblings, 0 replies; 11+ messages in thread
From: Marc Zyngier @ 2016-07-21 13:24 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, 21 Jul 2016 15:17:20 +0200
Radim Kr?m?? <rkrcmar@redhat.com> wrote:
Hi Radim,
> 2016-07-19 13:56+0100, Marc Zyngier:
> > The kprobe enablement work has uncovered that changes made by
> > a guest to MDSCR_EL1 were propagated to the host when VHE was
> > enabled, leading to unexpected exception being delivered.
> >
> > Moving this register to the list of registers that are always
> > context-switched fixes the issue.
> >
> > Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
> > Cc: stable at vger.kernel.org #4.6
> > Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> > Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> > ---
>
> I would take this patch to 4.7 directly through the main tree.
> Are your plans different?
If you're happy to take it now, that works for me. I can either send a
PR right away, or you can apply it directly, whichever works best for
you.
Thanks,
M.
--
Jazz is not dead. It just smells funny.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
2016-07-21 13:24 ` Marc Zyngier
@ 2016-07-21 13:49 ` Radim Krčmář
-1 siblings, 0 replies; 11+ messages in thread
From: Radim Krčmář @ 2016-07-21 13:49 UTC (permalink / raw)
To: Marc Zyngier
Cc: kvmarm, kvm, linux-arm-kernel, Christoffer Dall, Paolo Bonzini,
Tirumalesh Chalamarla
2016-07-21 14:24+0100, Marc Zyngier:
> On Thu, 21 Jul 2016 15:17:20 +0200
> Radim Krčmář <rkrcmar@redhat.com> wrote:
>
> Hi Radim,
>
>> 2016-07-19 13:56+0100, Marc Zyngier:
>> > The kprobe enablement work has uncovered that changes made by
>> > a guest to MDSCR_EL1 were propagated to the host when VHE was
>> > enabled, leading to unexpected exception being delivered.
>> >
>> > Moving this register to the list of registers that are always
>> > context-switched fixes the issue.
>> >
>> > Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
>> > Cc: stable@vger.kernel.org #4.6
>> > Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
>> > Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
>> > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
>> > ---
>>
>> I would take this patch to 4.7 directly through the main tree.
>> Are your plans different?
>
> If you're happy to take it now, that works for me.
The fix is clear, tested, and would go to 4.7.stable. Better to have it
in 4.7, IMO.
> I can either send a
> PR right away, or you can apply it directly, whichever works best for
> you.
It is just one patch so I'll apply it and send a pull request to Linus
on Saturday; less cummulative work that way. :)
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
@ 2016-07-21 13:49 ` Radim Krčmář
0 siblings, 0 replies; 11+ messages in thread
From: Radim Krčmář @ 2016-07-21 13:49 UTC (permalink / raw)
To: linux-arm-kernel
2016-07-21 14:24+0100, Marc Zyngier:
> On Thu, 21 Jul 2016 15:17:20 +0200
> Radim Kr?m?? <rkrcmar@redhat.com> wrote:
>
> Hi Radim,
>
>> 2016-07-19 13:56+0100, Marc Zyngier:
>> > The kprobe enablement work has uncovered that changes made by
>> > a guest to MDSCR_EL1 were propagated to the host when VHE was
>> > enabled, leading to unexpected exception being delivered.
>> >
>> > Moving this register to the list of registers that are always
>> > context-switched fixes the issue.
>> >
>> > Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
>> > Cc: stable at vger.kernel.org #4.6
>> > Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
>> > Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
>> > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
>> > ---
>>
>> I would take this patch to 4.7 directly through the main tree.
>> Are your plans different?
>
> If you're happy to take it now, that works for me.
The fix is clear, tested, and would go to 4.7.stable. Better to have it
in 4.7, IMO.
> I can either send a
> PR right away, or you can apply it directly, whichever works best for
> you.
It is just one patch so I'll apply it and send a pull request to Linus
on Saturday; less cummulative work that way. :)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
2016-07-21 13:49 ` Radim Krčmář
@ 2016-07-21 13:53 ` Marc Zyngier
-1 siblings, 0 replies; 11+ messages in thread
From: Marc Zyngier @ 2016-07-21 13:53 UTC (permalink / raw)
To: Radim Krčmář
Cc: kvm, Tirumalesh Chalamarla, Paolo Bonzini, kvmarm, linux-arm-kernel
On Thu, 21 Jul 2016 15:49:38 +0200
Radim Krčmář <rkrcmar@redhat.com> wrote:
> 2016-07-21 14:24+0100, Marc Zyngier:
> > On Thu, 21 Jul 2016 15:17:20 +0200
> > Radim Krčmář <rkrcmar@redhat.com> wrote:
> >
> > Hi Radim,
> >
> >> 2016-07-19 13:56+0100, Marc Zyngier:
> >> > The kprobe enablement work has uncovered that changes made by
> >> > a guest to MDSCR_EL1 were propagated to the host when VHE was
> >> > enabled, leading to unexpected exception being delivered.
> >> >
> >> > Moving this register to the list of registers that are always
> >> > context-switched fixes the issue.
> >> >
> >> > Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
> >> > Cc: stable@vger.kernel.org #4.6
> >> > Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> >> > Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> >> > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> >> > ---
> >>
> >> I would take this patch to 4.7 directly through the main tree.
> >> Are your plans different?
> >
> > If you're happy to take it now, that works for me.
>
> The fix is clear, tested, and would go to 4.7.stable. Better to have it
> in 4.7, IMO.
Agreed.
> > I can either send a
> > PR right away, or you can apply it directly, whichever works best for
> > you.
>
> It is just one patch so I'll apply it and send a pull request to Linus
> on Saturday; less cummulative work that way. :)
Brilliant. Thanks Radim.
M.
--
Jazz is not dead. It just smells funny.
_______________________________________________
kvmarm mailing list
kvmarm@lists.cs.columbia.edu
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1
@ 2016-07-21 13:53 ` Marc Zyngier
0 siblings, 0 replies; 11+ messages in thread
From: Marc Zyngier @ 2016-07-21 13:53 UTC (permalink / raw)
To: linux-arm-kernel
On Thu, 21 Jul 2016 15:49:38 +0200
Radim Kr?m?? <rkrcmar@redhat.com> wrote:
> 2016-07-21 14:24+0100, Marc Zyngier:
> > On Thu, 21 Jul 2016 15:17:20 +0200
> > Radim Kr?m?? <rkrcmar@redhat.com> wrote:
> >
> > Hi Radim,
> >
> >> 2016-07-19 13:56+0100, Marc Zyngier:
> >> > The kprobe enablement work has uncovered that changes made by
> >> > a guest to MDSCR_EL1 were propagated to the host when VHE was
> >> > enabled, leading to unexpected exception being delivered.
> >> >
> >> > Moving this register to the list of registers that are always
> >> > context-switched fixes the issue.
> >> >
> >> > Fixes: 9c6c35683286 ("arm64: KVM: VHE: Split save/restore of registers shared between guest and host")
> >> > Cc: stable at vger.kernel.org #4.6
> >> > Reported-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> >> > Tested-by: Tirumalesh Chalamarla <Tirumalesh.Chalamarla@cavium.com>
> >> > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> >> > ---
> >>
> >> I would take this patch to 4.7 directly through the main tree.
> >> Are your plans different?
> >
> > If you're happy to take it now, that works for me.
>
> The fix is clear, tested, and would go to 4.7.stable. Better to have it
> in 4.7, IMO.
Agreed.
> > I can either send a
> > PR right away, or you can apply it directly, whichever works best for
> > you.
>
> It is just one patch so I'll apply it and send a pull request to Linus
> on Saturday; less cummulative work that way. :)
Brilliant. Thanks Radim.
M.
--
Jazz is not dead. It just smells funny.
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2016-07-21 13:53 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-19 12:56 [PATCH v2] arm64: KVM: VHE: Context switch MDSCR_EL1 Marc Zyngier
2016-07-19 12:56 ` Marc Zyngier
2016-07-21 13:17 ` Radim Krčmář
2016-07-21 13:17 ` Radim Krčmář
2016-07-21 13:24 ` Marc Zyngier
2016-07-21 13:24 ` Marc Zyngier
2016-07-21 13:24 ` Marc Zyngier
2016-07-21 13:49 ` Radim Krčmář
2016-07-21 13:49 ` Radim Krčmář
2016-07-21 13:53 ` Marc Zyngier
2016-07-21 13:53 ` Marc Zyngier
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.