|   | 
      | 
  
  
      | 
      | 
  
 
     | 
    | 
  
  
     | 
    | 
  
  
    |   | 
      | 
  
  
    | 
         
xen-devel
[Xen-devel] MSI-X interrupts to guests
 
Some recent changes from Espen Skoglund
http://markmail.org/thread/76szuiywgd5dn2x4 suggest that it should now
be possible to map an MSI-X interrupt direct to a guest.  However, when
trying to do this, I get errors, and before I delve too deep I wondered
if there was something obvious I'm doing wrong.
My approach is that dom0 does something like this:
        struct physdev_map_pirq map_irq;
        map_irq.domid = guest_domid;
        map_irq.type = MAP_PIRQ_TYPE_MSI;
        map_irq.index = -1;
        map_irq.pirq = -1;
        map_irq.bus = pci_dev->bus->number;
        map_irq.devfn = pci_dev->devfn;
        map_irq.entry_nr = msix_entry;
        map_irq.table_base = msix_table;
        rc = HYPERVISOR_physdev_op(PHYSDEVOP_map_pirq, &map_irq);
This call succeeds.  dom0 then tells the guest the value of map_irq.pirq
(which seems to have a sensible value given the other interrupts mapped
to that domain) that it gets back from this hypercall, and the guest
tries to call request_irq() using that value.  The call to request_irq()
returns -38 (ENOSYS).
Any ideas what the problem could be?  I'm happy to investigate.
Kieran
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
 |   
 
 | 
    | 
  
  
    |   | 
    |