On 2013年05月07日 21:05, Alexey Kardashevskiy wrote:
On 05/07/2013 07:50 PM, Paolo Bonzini wrote:
Il 07/05/2013 09:20, Li Zhang ha scritto:
Hi all,
When we use the latest version of QEMU to build ovirt,
we get this error reported from libvirt.
What QEMU commit is this?
b3e6d591b05538056d665572f3e3bbfb3cbb70e7
Our QEMU tree syncs with upstream, right?
It might have been fixed already.
Hm. From what I see, it is all correct from the qemu side, the problem is
in libvirt which does not know about "virtio-pci-bus" yet.
Yes, from qtree, virtserialport is under virtio-serial-bus.0.
virtio-serial0.0
|
virtio-serial-bus.0
|
virtserialport
But libvirt set this device on virt-serial0.0 bus directly which is old
way in QEMU.
virtio-serial0.0
|
virtserialport
Paolo
qemu-system-ppc64: -device
virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm:
Bus 'virtio-serial0.0' is full
qemu-system-ppc64: -device
virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm:
Bus 'virtio-serial0.0' not found
Libvirt helps create QEMU command line and put virtserialport device to
bus virtio-serial0.0.
For latest version of QEMU, the bus type is changed.
(qemu) info qtree
bus: main-system-bus
type System
dev: spapr-pci-host-bridge, id ""
index = 0
buid = 0x800000020000000
liobn = 0x80000000
mem_win_addr = 0x100a0000000
mem_win_size = 0x20000000
io_win_addr = 0x10080000000
io_win_size = 0x10000
msi_win_addr = 0x10090000000
irq 0
bus: pci
type PCI
dev: virtio-serial-pci, id "virtio-serial0"
ioeventfd = on
vectors = 2
class = 0x780
indirect_desc = on
event_idx = on
max_ports = 31
addr = 03.0
romfile = <null>
rombar = 1
multifunction = off
command_serr_enable = on
class Class 0780, addr 00:03.0, pci id 1af4:1003 (sub 1af4:0003)
bar 0: i/o at 0xffffffffffffffff [0x1e]
bar 1: mem at 0xffffffffffffffff [0xffe]
bus: virtio-serial0.0
type virtio-pci-bus
dev: virtio-serial-device, id ""
max_ports = 31
bus: virtio-serial-bus.0
type virtio-serial-bus
dev: virtserialport, id "channel1"
chardev = charchannel1
nr = 2
name = "org.qemu.guest_agent.0"
port 2, guest off, host off, throttle off
dev: virtserialport, id "channel0"
chardev = charchannel0
nr = 1
name = "com.redhat.rhevm.vdsm"
port 1, guest off, host off, throttle off
But we tried to replace virtio-serial0.0 with virtio-serial-bus.0,
SLOF crashes. It still doesn't work at all.
Does anyone know how to use virtserialport in QEMU command line?
If configuration is changed in QEMU, libvirt also needs to change it
accordingly.
Thanks. :)
--Li
--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list