aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMarcel Apfelbaum <marcel@redhat.com>2016-06-27 18:38:32 +0300
committerMichael S. Tsirkin <mst@redhat.com>2016-07-04 14:50:01 +0300
commitb86eacb804bdb92acc48cab8cd2a465714a829ab (patch)
treeabbd4f799a09a988cc9554a69c511cc5d4132548 /include
parent1b04cc801adff9ddf5aca9afe0e19df54290ca2c (diff)
downloadqemu-b86eacb804bdb92acc48cab8cd2a465714a829ab.zip
qemu-b86eacb804bdb92acc48cab8cd2a465714a829ab.tar.gz
qemu-b86eacb804bdb92acc48cab8cd2a465714a829ab.tar.bz2
hw/pci: delay bus_master_enable_region initialization
Skip bus_master_enable region creation on PCI device init in order to be sure the IOMMU device (if present) would be created in advance. Add this memory region at machine_done time. Signed-off-by: Marcel Apfelbaum <marcel@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/hw/pci/pci_bus.h2
-rw-r--r--include/sysemu/sysemu.h1
2 files changed, 3 insertions, 0 deletions
diff --git a/include/hw/pci/pci_bus.h b/include/hw/pci/pci_bus.h
index 403fec6..5484a9b 100644
--- a/include/hw/pci/pci_bus.h
+++ b/include/hw/pci/pci_bus.h
@@ -39,6 +39,8 @@ struct PCIBus {
Keep a count of the number of devices with raised IRQs. */
int nirq;
int *irq_count;
+
+ Notifier machine_done;
};
typedef struct PCIBridgeWindows PCIBridgeWindows;
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index 7313673..ee7c760 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -75,6 +75,7 @@ void qemu_add_exit_notifier(Notifier *notify);
void qemu_remove_exit_notifier(Notifier *notify);
void qemu_add_machine_init_done_notifier(Notifier *notify);
+void qemu_remove_machine_init_done_notifier(Notifier *notify);
void hmp_savevm(Monitor *mon, const QDict *qdict);
int load_vmstate(const char *name);