Re: [PATCH v4 00/23] arm64: Virtualization Host Extension support

From: Marc Zyngier
Date: Thu Feb 11 2016 - 14:10:59 EST


On 11/02/16 19:07, Christoffer Dall wrote:
> On Thu, Feb 11, 2016 at 06:39:41PM +0000, Marc Zyngier wrote:
>> ARMv8.1 comes with the "Virtualization Host Extension" (VHE for
>> short), which enables simpler support of Type-2 hypervisors.
>>
>> This extension allows the kernel to directly run at EL2, and
>> significantly reduces the number of system registers shared between
>> host and guest, reducing the overhead of virtualization.
>>
>> In order to have the same kernel binary running on all versions of the
>> architecture, this series makes heavy use of runtime code patching.
>>
>> The first 22 patches massage the KVM code to deal with VHE and enable
>> Linux to run at EL2. The last patch catches an ugly case when VHE
>> capable CPUs are paired with some of their less capable siblings. This
>> should never happen, but hey...
>>
>> I have deliberately left out some of the more "advanced"
>> optimizations, as they are likely to distract the reviewer from the
>> core infrastructure, which is what I care about at the moment.
>>
>> Note: GDB is currently busted on VHE systems, as it checks for version
>> 6 on the debug architecture, while VHE is version 7. The
>> binutils people are on the case.
>>
>> This has been tested on the FVP_Base_SLV-V8-A model, and based on
>> v4.5-rc3 + kvmarm/master. I've put a branch out on:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git kvm-arm64/vhe
>
> I'm happy with this series as it stands, we just need someone to take a
> look at that debug patch and be happy with it.

I think Will is planning to have a go at it shortly. Once he and Catalin
are happy with the thing, I'll throw it into -next for a good shake.

Thanks,

M.
--
Jazz is not dead. It just smells funny...