[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 0/6] hw/arm/virt: kvm: allow gicv3 by default if v2 cannot
From: |
Andrew Jones |
Subject: |
Re: [PATCH v2 0/6] hw/arm/virt: kvm: allow gicv3 by default if v2 cannot work |
Date: |
Mon, 2 Mar 2020 08:55:29 +0100 |
On Sun, Mar 01, 2020 at 11:40:34AM +0100, Eric Auger wrote:
> At the moment if the end-user does not specify the gic-version along
> with KVM acceleration, v2 is set by default. However most of the
> systems now have GICv3 and sometimes they do not support GICv2
> compatibility. In that case we now end up with the following error:
>
> "qemu-system-aarch64: Initialization of device kvm-arm-gic failed:
> error creating in-kernel VGIC: No such device
> Perhaps the host CPU does not support GICv2?"
>
> since "1904f9b5f1 hw/intc/arm_gic_kvm: Don't assume kernel can
> provide a GICv2", which already allowed to output an explicit error
> message.
>
> This series keeps the default v2 selection in all cases except
> in the KVM accelerated mode when v2 cannot work:
> - either because the host does not support v2 in-kernel emulation or
> - because more than 8 vcpus were requested.
>
> Those cases did not work anyway so we do not break any compatibility.
> Now we get v3 selected in such a case.
>
> Best Regards
>
> Eric
>
> This series can be found at:
> https://github.com/eauger/qemu/tree/v4.2.0-gic-version-v2
>
> History:
> RFC -> v2:
> - 1904f9b5f1 hw/intc/arm_gic_kvm: Don't assume kernel can
> provide a GICv2" now has landed upstream
> - Fix gic-version description
> - Introduce finalize_gic_version and use switch/cases
> - take into account smp value
>
> Eric Auger (6):
> hw/arm/virt: Document 'max' value in gic-version property description
> hw/arm/virt: Use VIRT_GIC_VERSION defines
> hw/arm/virt: Introduce finalize_gic_version()
> target/arm/kvm: Let kvm_arm_vgic_probe() return a bitmap
> hw/arm/virt: kvm: Check the chosen gic version is supported by the
> host
> hw/arm/virt: kvm: allow gicv3 by default if v2 cannot work
>
> hw/arm/virt.c | 124 +++++++++++++++++++++++++++++++-----------
> include/hw/arm/virt.h | 8 ++-
> target/arm/kvm.c | 14 +++--
> target/arm/kvm_arm.h | 3 +
> 4 files changed, 110 insertions(+), 39 deletions(-)
>
> --
> 2.20.1
>
>
With Richard's enum suggestions
For the series
Reviewed-by: Andrew Jones <address@hidden>
- [PATCH v2 4/6] target/arm/kvm: Let kvm_arm_vgic_probe() return a bitmap, (continued)