From: christoffer.dall@linaro.org (Christoffer Dall)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 4/5] ARM: KVM: clear exclusive monitor on all exception returns
Date: Wed, 19 Jun 2013 17:27:36 -0700 [thread overview]
Message-ID: <20130620002736.GK7870@lvm> (raw)
In-Reply-To: <1371648006-8036-5-git-send-email-marc.zyngier@arm.com>
On Wed, Jun 19, 2013 at 02:20:05PM +0100, Marc Zyngier wrote:
> Make sure we clear the exclusive movitor on all exception returns,
> which otherwise could lead to lock corruptions.
>
> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
> ---
> arch/arm/kvm/interrupts.S | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/arch/arm/kvm/interrupts.S b/arch/arm/kvm/interrupts.S
> index 3124e0f..750f051 100644
> --- a/arch/arm/kvm/interrupts.S
> +++ b/arch/arm/kvm/interrupts.S
> @@ -301,6 +301,7 @@ THUMB( orr r2, r2, #PSR_T_BIT )
> ldr r2, =BSYM(panic)
> msr ELR_hyp, r2
> ldr r0, =\panic_str
> + clrex @ Clear exclusive monitor
on a panic? sure, why not ;)
> eret
> .endm
>
> @@ -450,6 +451,7 @@ guest_trap:
>
> 4: pop {r0, r1} @ Failed translation, return to guest
> mcrr p15, 0, r0, r1, c7 @ PAR
> + clrex
I gather this is because any store can potentially leave the system with
an exclusive monitor taken?
patch looks fine.
> pop {r0, r1, r2}
> eret
>
> @@ -476,6 +478,7 @@ switch_to_guest_vfp:
>
> pop {r3-r7}
> pop {r0-r2}
> + clrex
> eret
> #endif
>
> --
> 1.8.2.3
>
>
>
> _______________________________________________
> kvmarm mailing list
> kvmarm at lists.cs.columbia.edu
> https://lists.cs.columbia.edu/cucslists/listinfo/kvmarm
next prev parent reply other threads:[~2013-06-20 0:27 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-19 13:20 [PATCH 0/5] A handful of KVM/ARM fixes Marc Zyngier
2013-06-19 13:20 ` [PATCH 1/5] ARM: KVM: perform save/restore of PAR Marc Zyngier
2013-06-19 13:20 ` [PATCH 2/5] ARM: KVM: add missing dsb before invalidating Stage-2 TLBs Marc Zyngier
2013-06-20 0:05 ` Christoffer Dall
2013-06-20 0:08 ` Christoffer Dall
2013-06-20 10:47 ` Will Deacon
2013-06-19 13:20 ` [PATCH 3/5] ARM: KVM: make sure maintainance operation complete before world switch Marc Zyngier
2013-06-20 0:18 ` Christoffer Dall
2013-06-20 8:13 ` Marc Zyngier
2013-06-20 17:14 ` Christoffer Dall
2013-06-20 17:29 ` Marc Zyngier
2013-06-20 18:15 ` Will Deacon
2013-06-20 18:28 ` Christoffer Dall
2013-06-20 18:38 ` Will Deacon
2013-06-20 18:50 ` Christoffer Dall
2013-06-20 10:48 ` Will Deacon
2013-06-19 13:20 ` [PATCH 4/5] ARM: KVM: clear exclusive monitor on all exception returns Marc Zyngier
2013-06-20 0:27 ` Christoffer Dall [this message]
2013-06-20 8:29 ` Marc Zyngier
2013-06-19 13:20 ` [PATCH 5/5] ARM: KVM: issue a DSB after cache maintainance operations Marc Zyngier
2013-06-20 10:46 ` Will Deacon
2013-06-20 18:33 ` [PATCH 0/5] A handful of KVM/ARM fixes Christoffer Dall
2013-06-20 18:41 ` Marc Zyngier
2013-06-20 18:48 ` Christoffer Dall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20130620002736.GK7870@lvm \
--to=christoffer.dall@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.