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

[Xen-devel] [patch] qemu-xen: Use physical INTX for virtual PCI functions



Allow virtual functions to use the legacy interrupt pin of the
corresponding physical device.  This is already half-implemented
by the code that uses pci_read_intx() in pass-through.c. This fills
in a missing piece.

An alternate solution is to reverse the previously applied pci_read_intx()
code and revert to always using INTA. However, that seems likely to lead to
excessive sharing of interrupt pins when multi-function pass-through is
used.

Tested-by: Tom Rotenberg <tom.rotenberg@xxxxxxxxx>
Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>

--- 

This patch has been applied to the pass-through-multi-function branch of
git://github.com/horms/qemu-xen-3.4-testing.git (git-web:
http://github.com/horms/qemu-xen-3.4-testing/tree/pass-through-multi-function)

It is not applicable to the upstream qemu-xen-3.4-testing.git tree.

It is applicable to qemu-xen-3.4-unstable.git, Ian please consider applying.

It does not introduce any incompatibilities with xend.

Index: ioemu-remote/hw/pass-through.c
===================================================================
--- ioemu-remote.orig/hw/pass-through.c 2009-07-27 21:57:24.000000000 +1000
+++ ioemu-remote/hw/pass-through.c      2009-07-27 21:58:18.000000000 +1000
@@ -2617,13 +2617,7 @@ static uint32_t pt_status_reg_init(struc
 static uint32_t pt_irqpin_reg_init(struct pt_dev *ptdev,
         struct pt_reg_info_tbl *reg, uint32_t real_offset)
 {
-    int reg_field = 0;
-
-    /* set Interrupt Pin register to use INTA# if it has */
-    if (ptdev->dev.config[real_offset])
-        reg_field = 0x01;
-
-    return reg_field;
+    return ptdev->dev.config[real_offset];
 }
 
 /* initialize BAR */

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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