[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] XEN-ARMv7 GIC virtualization question


Browsing through sources of XEN-ARM for armv7 with virtualization extensions it is not completely clear how GIC virtualization is supported.

Actually I do not understand how Dom0/DomU OS'es see GIC Distributor registers.
In a document "ARM® Generic Interrupt Controller Architecture version 2.0 Architecture Specification" in "5.2 Managing the GIC virtual CPU interface" it is mentioned following:
On the processor, the hypervisor:
• configures IRQs to be taken in Hyp mode, so that it handles all IRQs itself
uses the stage 2 Non-secure address translations to:
— trap all Guest OS accesses to the GIC Distributor registers, so that it can determine the virtual
distributor settings for each virtual machine
— ensure that the virtual machines cannot access the GIC virtual interface control registers
— remap the GIC CPU interface register address space to point to the GIC virtual CPU interface registers.
• configures the required maintenance interrupts from the virtual CPU interface

In a function arch_domain_create() I do see mapping of GIC CPU interface registers space of VM to point to the GIC virtual CPU interface. But can't find how XEN handles VM's accesses to GIC Distributor registers. Could you please explain me how is it done, or point to the correspondent code.

Andrii Anisov.
Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.