
On Tue, Sep 05, 2017 at 15:25:33 +0200, Andrea Bolognani wrote:
Unlike other controllers, PCI controller can plug into each other, which might turn into a problem if they are not listed in the expected order on the QEMU command line, because the guest will then not be able to start with an error such as
qemu-kvm: -device pci-bridge,chassis_nr=3,id=pci.3,bus=pci.2.0,addr=0x7: Bus 'pci.2.0' not found
Add some logic to make sure PCI controller appear in the correct order on the QEMU command line, regardless of the order they were added to the guest configuration.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1479674
Signed-off-by: Andrea Bolognani <abologna@redhat.com> --- src/qemu/qemu_command.c | 72 ++++++++++++++++------ .../qemuxml2argv-pci-autoadd-idx.args | 2 +- .../qemuxml2argv-pseries-many-buses-2.args | 4 +- 3 files changed, 56 insertions(+), 22 deletions(-)
Please make sure that the migration stream does not depend on the ordering of the controllers. Re-arranging them could be a problem if we don't have a way to migrate them afterwards.