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

[Xen-devel] Re: [PATCH 04/13] Removed MSI capability in the pci-back driver.

On Tue, Oct 13, 2009 at 03:02:52PM -0700, Jeremy Fitzhardinge wrote:
> On 10/13/09 14:22, Konrad Rzeszutek Wilk wrote:
> > Currently the tree does not have the Xen MSI capability. Will re-introduce
> > when the capability exists.
> >   
> Devices with MSI interrupts work fine in dom0.  Are you referring to
> something else?

The issue I was referring to was the ownership of MSI interrupts for PV guests.
Mainly the mechanism for binding an MSI interrupt to a guest is not part of the
Linux pv-ops kernel. If you look in the xen_setup_msi_irqs function, 

 624         map_irq.domid = domid;
 625         map_irq.type = MAP_PIRQ_TYPE_MSI;
 626         map_irq.index = -1;
 627         map_irq.pirq = -1;
 628         map_irq.bus = dev->bus->number;
 629         map_irq.devfn = dev->devfn;
.. snip ..
 649         rc = HYPERVISOR_physdev_op(PHYSDEVOP_map_pirq, &map_irq);

The domain that the vector is assigned to is the DOMID_SELF (domid earlier on
is set to that). For pciback purpose, this needs to be the guest domain id. 
HVM guests accomplish this in the hw/pt-msi.c code, so we need only to worry
about the PV case.

In the 2.6.18 code there was hook that would pass this domaid ID around
for the device (register_msi_get_owner and its friend). I am trying to figure 
out if
there is a more upstream-applicable way of doing this.

>     J

Xen-devel mailing list



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