As of "qemu-xen: hot-plug PCI devices at boot-time" register_real_dev()
no longer needs to call __insert_to_pci_slot() and thus there
is no need for __insert_to_pci_slot() to be idempotent.
This is because register_real_dev()'s now only has one caller,
power_on_php_slot(), which always passes a valid e_slot to
register_real_dev().
Cc: Masaki Kanno <kanno.masaki@xxxxxxxxxxxxxx>
Cc: Edwin Zhai <edwin.zhai@xxxxxxxxx>
Signed-off-by: Simon Horman <horms@xxxxxxxxxxxx>
---
This patch requires "qemu-xen: hot-plug PCI devices at boot-time"
Index: ioemu-remote/hw/pass-through.c
===================================================================
--- ioemu-remote.orig/hw/pass-through.c 2009-06-01 12:49:24.000000000 +1000
+++ ioemu-remote/hw/pass-through.c 2009-06-01 13:02:24.000000000 +1000
@@ -914,9 +914,6 @@ static int __insert_to_pci_slot(int bus,
if ( !test_pci_slot(slot) &&
!pci_devfn_in_use(e_bus, PCI_DEVFN(slot, 0)) )
goto found;
- if ( pci_slot_match(bus, dev, func, slot) )
- /* The slot is already here, just return */
- return slot;
return -2;
}
@@ -3778,12 +3775,6 @@ static struct pt_dev * register_real_dev
pci_fill_info(pci_dev, PCI_FILL_IRQ | PCI_FILL_BASES | PCI_FILL_ROM_BASE |
PCI_FILL_SIZES);
pt_libpci_fixup(pci_dev);
- e_slot = __insert_to_pci_slot(r_bus, r_dev, r_func, e_slot, NULL);
- if ( e_slot < 0 ) {
- PT_LOG("Error: no free virtual PCI slot\n");
- return NULL;
- }
-
msi_translate = direct_pci_msitranslate;
power_mgmt = direct_pci_power_mgmt;
while (opt) {
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|