[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 0/1] qemu-system-$ARCH incompatible with qemu-kvm an
From: |
Niels de Vos |
Subject: |
[Qemu-devel] [PATCH 0/1] qemu-system-$ARCH incompatible with qemu-kvm and bus=pci.0 parameter |
Date: |
Fri, 28 Jan 2011 15:54:01 +0000 |
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
- [Qemu-devel] [PATCH 0/1] qemu-system-$ARCH incompatible with qemu-kvm and bus=pci.0 parameter,
Niels de Vos <=