
On 01/18/2011 06:22 PM, Wen Congyang wrote:
At 01/18/2011 11:16 PM, Eric Blake Write:
On 01/17/2011 10:39 PM, Wen Congyang wrote:
+ cmd = virCommandNewArgList(qemu, + "-device", "pci-assign,?", + NULL);
The qemu that I used does not support '-device pci-assign,?'... So, I can not start the guest with this patch.
The qemu is cloned from here: http://git.qemu.org/git/qemu.git
What do the following commands produce (assuming that both qemu and qemu-kvm on your PATH are the binaries that you are testing with)?
After builing qemu, I only have the qemy-system-x86_64 command
That explains it. git.qemu.org/git/qemu.git is the upstream qemu repository, and lacks kvm integration. As such, it lacks -device pci-assign. To build qemu-kvm, you also need to track git://git.kernel.org/pub/scm/virt/kvm/qemu-kvm.git (which is heavily based on the former qemu.git). Without kvm support, qemu will still be able to emulate x86_64 platforms, but it's noticeably slower.
# qemu-system-x86_64 --version QEMU emulator version 0.13.50, Copyright (c) 2003-2008 Fabrice Bellard
Good - my reproduction of your issue (and my patch) was correct.
# qemu-system-x86_64 -device ? -device pci-assign,? -device virtio-blk-pci,? name "virtio-9p-pci", bus PCI ... name "isa-debugcon", bus ISA virtio-blk-pci.class=hex32 virtio-blk-pci.drive=drive virtio-blk-pci.logical_block_size=uint16 virtio-blk-pci.physical_block_size=uint16 virtio-blk-pci.min_io_size=uint16 virtio-blk-pci.opt_io_size=uint32 virtio-blk-pci.bootindex=int32 virtio-blk-pci.discard_granularity=uint32 virtio-blk-pci.vectors=uint32 virtio-blk-pci.indirect_desc=on/off virtio-blk-pci.scsi=on/off
And this, as desired, is a successful feature probe even though it lacks pci-assign.* information. Sorry for getting your name wrong in my commit message. -- Eric Blake eblake@redhat.com +1-801-349-2682 Libvirt virtualization library http://libvirt.org