From: Christoffer Dall <christoffer.dall@linaro.org>
To: Mario Smarduch <m.smarduch@samsung.com>
Cc: kvm@vger.kernel.org, marc.zyngier@arm.com,
catalin.marinas@arm.com, will.deacon@arm.com,
kvmarm@lists.cs.columbia.edu,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v3 2/2] arm: KVM: keep arm vfp/simd exit handling consistent with arm64
Date: Wed, 1 Jul 2015 15:50:41 +0200 [thread overview]
Message-ID: <20150701135041.GH11332@cbox> (raw)
In-Reply-To: <1435190652-5831-3-git-send-email-m.smarduch@samsung.com>
On Wed, Jun 24, 2015 at 05:04:12PM -0700, Mario Smarduch wrote:
> After enhancing arm64 FP/SIMD exit handling, ARMv7 VFP exit branch is moved
> to guest trap handling. This allows us to keep exit handling flow between both
> architectures consistent.
>
> Signed-off-by: Mario Smarduch <m.smarduch@samsung.com>
> ---
> arch/arm/kvm/interrupts.S | 14 ++++++++------
> 1 file changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/kvm/interrupts.S b/arch/arm/kvm/interrupts.S
> index 79caf79..b245b4e 100644
> --- a/arch/arm/kvm/interrupts.S
> +++ b/arch/arm/kvm/interrupts.S
> @@ -363,10 +363,6 @@ hyp_hvc:
> @ Check syndrome register
> mrc p15, 4, r1, c5, c2, 0 @ HSR
> lsr r0, r1, #HSR_EC_SHIFT
> -#ifdef CONFIG_VFPv3
> - cmp r0, #HSR_EC_CP_0_13
> - beq switch_to_guest_vfp
> -#endif
> cmp r0, #HSR_EC_HVC
> bne guest_trap @ Not HVC instr.
>
> @@ -380,7 +376,10 @@ hyp_hvc:
> cmp r2, #0
> bne guest_trap @ Guest called HVC
>
> -host_switch_to_hyp:
> + /*
> + * Getting here means host called HVC, we shift parameters and branch
> + * to Hyp function.
> + */
> pop {r0, r1, r2}
>
> /* Check for __hyp_get_vectors */
> @@ -411,6 +410,10 @@ guest_trap:
>
> @ Check if we need the fault information
> lsr r1, r1, #HSR_EC_SHIFT
> +#ifdef CONFIG_VFPv3
> + cmp r1, #HSR_EC_CP_0_13
> + beq switch_to_guest_vfp
> +#endif
> cmp r1, #HSR_EC_IABT
> mrceq p15, 4, r2, c6, c0, 2 @ HIFAR
> beq 2f
> @@ -479,7 +482,6 @@ guest_trap:
> */
> #ifdef CONFIG_VFPv3
> switch_to_guest_vfp:
> - load_vcpu @ Load VCPU pointer to r0
> push {r3-r7}
>
> @ NEON/VFP used. Turn on VFP access.
> --
> 1.7.9.5
>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
WARNING: multiple messages have this Message-ID (diff)
From: christoffer.dall@linaro.org (Christoffer Dall)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 2/2] arm: KVM: keep arm vfp/simd exit handling consistent with arm64
Date: Wed, 1 Jul 2015 15:50:41 +0200 [thread overview]
Message-ID: <20150701135041.GH11332@cbox> (raw)
In-Reply-To: <1435190652-5831-3-git-send-email-m.smarduch@samsung.com>
On Wed, Jun 24, 2015 at 05:04:12PM -0700, Mario Smarduch wrote:
> After enhancing arm64 FP/SIMD exit handling, ARMv7 VFP exit branch is moved
> to guest trap handling. This allows us to keep exit handling flow between both
> architectures consistent.
>
> Signed-off-by: Mario Smarduch <m.smarduch@samsung.com>
> ---
> arch/arm/kvm/interrupts.S | 14 ++++++++------
> 1 file changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/kvm/interrupts.S b/arch/arm/kvm/interrupts.S
> index 79caf79..b245b4e 100644
> --- a/arch/arm/kvm/interrupts.S
> +++ b/arch/arm/kvm/interrupts.S
> @@ -363,10 +363,6 @@ hyp_hvc:
> @ Check syndrome register
> mrc p15, 4, r1, c5, c2, 0 @ HSR
> lsr r0, r1, #HSR_EC_SHIFT
> -#ifdef CONFIG_VFPv3
> - cmp r0, #HSR_EC_CP_0_13
> - beq switch_to_guest_vfp
> -#endif
> cmp r0, #HSR_EC_HVC
> bne guest_trap @ Not HVC instr.
>
> @@ -380,7 +376,10 @@ hyp_hvc:
> cmp r2, #0
> bne guest_trap @ Guest called HVC
>
> -host_switch_to_hyp:
> + /*
> + * Getting here means host called HVC, we shift parameters and branch
> + * to Hyp function.
> + */
> pop {r0, r1, r2}
>
> /* Check for __hyp_get_vectors */
> @@ -411,6 +410,10 @@ guest_trap:
>
> @ Check if we need the fault information
> lsr r1, r1, #HSR_EC_SHIFT
> +#ifdef CONFIG_VFPv3
> + cmp r1, #HSR_EC_CP_0_13
> + beq switch_to_guest_vfp
> +#endif
> cmp r1, #HSR_EC_IABT
> mrceq p15, 4, r2, c6, c0, 2 @ HIFAR
> beq 2f
> @@ -479,7 +482,6 @@ guest_trap:
> */
> #ifdef CONFIG_VFPv3
> switch_to_guest_vfp:
> - load_vcpu @ Load VCPU pointer to r0
> push {r3-r7}
>
> @ NEON/VFP used. Turn on VFP access.
> --
> 1.7.9.5
>
Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
next prev parent reply other threads:[~2015-07-01 13:39 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-06-25 0:04 [PATCH v3 0/2] arm/arm64: KVM: Optimize arm64 fp/simd, saves 30-50% on exits Mario Smarduch
2015-06-25 0:04 ` Mario Smarduch
2015-06-25 0:04 ` [PATCH v3 1/2] arm64: KVM: Optimize arm64 skip 30-50% vfp/simd save/restore " Mario Smarduch
2015-06-25 0:04 ` Mario Smarduch
2015-07-01 13:46 ` Christoffer Dall
2015-07-01 13:46 ` Christoffer Dall
2015-07-02 21:51 ` Mario Smarduch
2015-07-02 21:51 ` Mario Smarduch
2015-07-03 11:53 ` Christoffer Dall
2015-07-03 11:53 ` Christoffer Dall
2015-07-03 18:56 ` Mario Smarduch
2015-07-03 18:56 ` Mario Smarduch
2015-06-25 0:04 ` [PATCH v3 2/2] arm: KVM: keep arm vfp/simd exit handling consistent with arm64 Mario Smarduch
2015-06-25 0:04 ` Mario Smarduch
2015-07-01 13:50 ` Christoffer Dall [this message]
2015-07-01 13:50 ` Christoffer Dall
2015-07-01 9:49 ` [PATCH v3 0/2] arm/arm64: KVM: Optimize arm64 fp/simd, saves 30-50% on exits Christoffer Dall
2015-07-01 9:49 ` Christoffer Dall
2015-07-02 17:49 ` Mario Smarduch
2015-07-02 17:49 ` Mario Smarduch
2015-07-02 20:58 ` Christoffer Dall
2015-07-02 20:58 ` 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=20150701135041.GH11332@cbox \
--to=christoffer.dall@linaro.org \
--cc=catalin.marinas@arm.com \
--cc=kvm@vger.kernel.org \
--cc=kvmarm@lists.cs.columbia.edu \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=m.smarduch@samsung.com \
--cc=marc.zyngier@arm.com \
--cc=will.deacon@arm.com \
/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.