This series aims to allow more devices to be used with '-device' by sorting the devices based on a predefined creation order flag before creating them.
Devices like IOMMU need to be created before others, so they can leverage the DeviceCreationPriority flag introduced by the first patch to DeviceClass. The second patch sorts the devices by their DeviceCreationPriority before creating them. Finally, the last patch demonstrates how it can be used to ensure the creation of host-bridges before the pci-bridges and pci-bridges before the others. I preferred to combine all the priorities into a single enum to better manage the creation order. This is an RFC because I only wanted to know if it seems like the right way to go. Comments are appreciated, Thanks, Marcel Marcel Apfelbaum (3): qdev: add device creation priority flag vl.c: create devices by their creation priority flag hw/pci-bridge: add the corresponding creation priority flag hw/pci-bridge/pci_bridge_dev.c | 1 + hw/pci-bridge/pci_expander_bridge.c | 2 ++ include/hw/qdev-core.h | 13 +++++++++ include/monitor/qdev.h | 1 + qdev-monitor.c | 19 +++++++++++++ vl.c | 55 +++++++++++++++++++++++++++++++------ 6 files changed, 82 insertions(+), 9 deletions(-) -- 2.4.3