This is the mail archive of the
mailing list for the glibc project.
Re: [PATCH 21/27] arm64/sve: KVM: Prevent guests from using SVE
- From: Marc Zyngier <marc dot zyngier at arm dot com>
- To: Dave Martin <Dave dot Martin at arm dot com>, g at e103592 dot cambridge dot arm dot com
- Cc: linux-arm-kernel at lists dot infradead dot org, linux-arch at vger dot kernel dot org, libc-alpha at sourceware dot org, Ard Biesheuvel <ard dot biesheuvel at linaro dot org>, Szabolcs Nagy <szabolcs dot nagy at arm dot com>, Catalin Marinas <catalin dot marinas at arm dot com>, Will Deacon <will dot deacon at arm dot com>, Richard Sandiford <richard dot sandiford at arm dot com>, kvmarm at lists dot cs dot columbia dot edu, Christoffer Dall <christoffer dot dall at linaro dot org>
- Date: Wed, 16 Aug 2017 12:22:47 +0100
- Subject: Re: [PATCH 21/27] arm64/sve: KVM: Prevent guests from using SVE
- Authentication-results: sourceware.org; auth=none
- References: <1502280338-23002-1-git-send-email-Dave.Martin@arm.com> <1502280338-23002-22-git-send-email-Dave.Martin@arm.com> <email@example.com> <20170816105013.GZ6321@e103592.cambridge.arm.com> <firstname.lastname@example.org>
On 16/08/17 12:20, Marc Zyngier wrote:
> On 16/08/17 11:50, Dave Martin wrote:
>> On Tue, Aug 15, 2017 at 05:33:15PM +0100, Marc Zyngier wrote:
>>> On 09/08/17 13:05, Dave Martin wrote:
>>>> Until KVM has full SVE support, guests must not be allowed to
>>>> execute SVE instructions.
>>>> This patch enables the necessary traps, and also ensures that the
>>>> traps are disabled again on exit from the guest so that the host
>>>> can still use SVE if it wants to.
>>>> Signed-off-by: Dave Martin <Dave.Martin@arm.com>
>>>> arch/arm64/include/asm/kvm_arm.h | 3 ++-
>>>> arch/arm64/kvm/hyp/switch.c | 6 +++---
>>>> 2 files changed, 5 insertions(+), 4 deletions(-)
>>>> diff --git a/arch/arm64/include/asm/kvm_arm.h b/arch/arm64/include/asm/kvm_arm.h
>>>> index dbf0537..8a19651 100644
>>>> --- a/arch/arm64/include/asm/kvm_arm.h
>>>> +++ b/arch/arm64/include/asm/kvm_arm.h
>>>> @@ -186,7 +186,7 @@
>>>> #define CPTR_EL2_TTA (1 << 20)
>>>> #define CPTR_EL2_TFP (1 << CPTR_EL2_TFP_SHIFT)
>>>> #define CPTR_EL2_TZ (1 << 8)
>>>> -#define CPTR_EL2_DEFAULT 0x000033ff
>>>> +#define CPTR_EL2_DEFAULT (0x000033ff & ~CPTR_EL2_TZ)
>>> I must say I'm not overly fond of this construct. I'd rather introduce a
>>> RES1 field that matches the v8.2 description, instead of this ugly
>>> constant and something that clears it.
>> Sorry, I don't get your meaning here. v8.2 neither immediately predates
>> or postdates SVE.
> The ARMv8 ARM (DDI406B_a, D7.2.19) says otherwise. This bit is only
Of course, the days of the ARMv7 ARM are still haunting me. This should
Apologies for the confusion.
Jazz is not dead. It just smells funny...