Hi there, obviously qemu-system-$ARCH, qemu-kvm and libvirt disagree about the most suitable name for the PCI-bus. qemu-kvm and libvirt work nicely together by using "pci.0" as name. Unfortunately libvirt seems to assume that also for qemu-system-$ARCH the name "pci.0" should be passed on the command line. When doing so, errors like "Bus 'pci.0' not found" get logged and qemu aborts.
This seems to be a very common case, googling for this seems to reveal that loads of users have similar experiences. A common workaround seems to be to write a little loader script that replaces parameters passed on to qemu-system-$ARCH by valid ones (here: s/bus=pci.0/bus=pci/). As a user, I would really like to be able to start any type of emulated machine, without needing to know the internal hardware layout. Passing bus=pci seems sane to me, but unfortunately qemu-kvm does not accept this. (At least on my standard configuration.) I guess that qemu-kvm is behaving as intended, and qemu-system-$ARCH missed a hardware upgrade. In order to make libvirt, qemu-kvm and qemu-system-$ARCH work together, I have changed the default name "pci" for emulated machines by "pci.0". The tests I have done so far are succesful. However changing the name is only one possible solution, and there is a major drawback... Any old scripts that pass bus=pci on the command line, will not work anymore and result in a "Bus 'pci' not found" error. Therefor I do not know if this is the correct route to succes. An alternative solution would be to match any bus-names from the command line appended with ".0" to their non-numbered equivalent. I'm looking for thoughts and guidance on this issue. It can well be that qemu is not the right place to fix this, and I should look into libvirt instead. Many thanks, Niels -- Niels de Vos (1): Use "pci.0" as bus->name for PCI-busses like qemu-kvm does already hw/apb_pci.c | 2 +- hw/bonito.c | 2 +- hw/grackle_pci.c | 2 +- hw/gt64xxx.c | 2 +- hw/ppc4xx_pci.c | 2 +- hw/ppce500_pci.c | 2 +- hw/prep_pci.c | 2 +- hw/sh_pci.c | 2 +- hw/unin_pci.c | 4 ++-- hw/versatile_pci.c | 2 +- 10 files changed, 11 insertions(+), 11 deletions(-) -- 1.7.3.5