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

Re: [Xen-devel] [XenARM] XEN tools for ARM with Virtualization Extensions



On Wed, 2013-07-10 at 23:04 +0100, Julien Grall wrote:
> On 10 July 2013 20:38, Eric Trudeau <etrudeau@xxxxxxxxxxxx> wrote:
> >> > What functions should I call to implement  XEN_DOMCTL_bind_pt_irq on
> >> ARM?
> >>
> >> There's a function like route_irq_to_guest which we use to route IRQs to
> >> dom0 during boot. In principal that could also be used to reroute an IRQ
> >> to a guest, but I'm not sure how it will interact with the reassignment,
> >> since in your case the IRQ starts off bound to dom0. Hopefully it's just
> >> a small change to make it work for this case.
> >>
> >
> > In gic_route_irq_to_guest(), there is this call:
> >     gic_set_irq_properties(irq->irq, level, 1u << smp_processor_id(), 0xa0);
> >
> > I believe this will mean all IRQs will be routed on the current processor.
> > I believe this is PCPU0 when the dom0 device tree is being parsed.
> > When the PHYSDEVOP_map_pirq call is handled by the Hypervisor, the PCPU
> > may be any of the processors.
> > Is there a reason when we only route the IRQs for Dom0 to one PCPU?
> > If only one is allowed, should it be PCPU0?
> 
> I don't see any particular reason to route the PIRQs on only PCPU0.
> I think it's because Xen only routes SPIs to VCPU0, which is mostly
> running on PCPU0.
> 
> The best solution is routing the PIRQ on the PCPU which is running the VCPU.

For interrupts which are routed to the guest we should track the guest's
writes to the virtual target registers and then configure the physical
target registers correctly when migrating vcpus around so that the
interrupt follows the vcpu around.

Ian.

> 
> --
> Julien Grall



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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