Re: [PATCH V1 0/7] Enable ACPI support for ARM KVM GIC

Marc Zyngier
2016-02-08T16:56:52Z

On 08/02/16 16:47, Wei Huang wrote:
>
>
> On 2/8/16 10:39, Julien Grall wrote:
>> Hi,
>>
>> On 08/02/16 09:59, Marc Zyngier wrote:
>>> On 05/02/16 17:07, Wei Huang wrote:
>>>> Wei Huang (7):
>>>> KVM: GIC: Move GIC DT probing code to GICv2 and GICv3 files
>>>> KVM: GIC: Add extra fields to store GICH and GICV resource info
>>>> KVM: GIC: Create a common probe function for GIC
>>>> KVM: GICv2: Extract the common code from DT
>>>> KVM: GICv2: Add ACPI probing function
>>>> KVM: GICv3: Extract the common code from DT
>>>> KVM: GICv3: Add ACPI probing function
>>>>
>>>> include/kvm/arm_vgic.h | 14 ++--
>>>> virt/kvm/arm/vgic-v2-emul.c | 4 +-
>>>> virt/kvm/arm/vgic-v2.c | 186
>>>> +++++++++++++++++++++++++++++++++-----------
>>>> virt/kvm/arm/vgic-v3.c | 159
>>>> ++++++++++++++++++++++++++++---------
>>>> virt/kvm/arm/vgic.c | 22 +-----
>>>> 5 files changed, 277 insertions(+), 108 deletions(-)
>>>>
>>>
>>> So when I see this diffstat and the patches that follow, I cannot help
>>> but think that we do have a disconnect here. You do add a bunch of ACPI
>>> probing in KVM, to which I've already said no.
>>>
>>> I want to see the probing code in the GIC drivers, exported through a
>>> common structure that KVM can then use. That's it. Nothing else.
>>
>> I've been working on a patch series which rely on the GIC and arch timer
>> drivers to get the necessary information to initialize the different KVM
>> components (vGIC + vtimer).
>>
>> I think this achieves the goal you have in mind. I will post the series
>> in a few minutes.
>>
>
> Julien,
>
> Regarding arch_timer, there is an effort going on by Linaro. It has
> impact on KVM arch_timer init. See https://lkml.org/lkml/2016/2/1/658.

The KVM changes in this series are slightly pointless, and should be
addressed the same way the GIC should be addressed:

- Collect the information in the low-level code
- Expose it through a common infrastructure.

If you have different code paths for ACPI and DT outside of the core
probing code, then you are doing it wrong. ACPI is not "different".

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