[libvirt] [PATCH 2/3] qemu: improve device flag parsing

Eric Blake eblake at redhat.com
Wed Jan 19 01:54:55 UTC 2011


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 at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 619 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20110118/af8c016c/attachment-0001.sig>


More information about the libvir-list mailing list