[libvirt] [PATCH 1/1] Clear PIIX3/PIIX4_USB capabilities for non-X86 platforms

Li Zhang zhlcindy at gmail.com
Thu Feb 28 02:39:56 UTC 2013


On Thu, Feb 28, 2013 at 10:06 AM, Li Zhang <zhlcindy at gmail.com> wrote:

> I also hope that QEMU capabilities depend on the binary by QMP.
> But the flags in virQEMUCapsObjectTypes are all set in virQEMUCapsInitQMP.
>
> virQEMUCapsInitQMP -> virQEMUCapsProbeQMPObjects ->
>                                   virQEMUCapsProcessStringFlags(qemuCaps,
>
> ARRAY_CARDINALITY(virQEMUCapsObjectTypes),
>                                   virQEMUCapsObjectTypes,
>                                   nvalues, values);
>
>
More information from QEMU:

I tried to execute  "qom-list-types" command, I get a lot of return values
including X86 and other platforms.
So this results that most flags may be set in this function.

More comments?

Thanks.


>
>
So, it is not reasonable to set all of these flags for every platform.
> This is a problem for other non-x86 platforms.
>
> I saw that capabilities changes a lot since I used 0.10.2 before.
>
> Could you help look into the code to see this problem?
>
> Thanks a lot. :)
> -Li
>
>
> On Wed, Feb 27, 2013 at 9:36 PM, Jiri Denemark <jdenemar at redhat.com>wrote:
>
>> On Wed, Feb 27, 2013 at 19:52:22 +0800, Li Zhang wrote:
>> > From: Li Zhang <zhlcindy at linux.vnet.ibm.com>
>> >
>> > Currently, PIIX3/PIIX4_USB capabilities are enabled for other platforms.
>> > Actually, it is only supported for X86.
>> >
>> > So this patch is to clear the capabilities for non-X86 platforms.
>> >
>> ...
>> > diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
>> > index 40022c1..ef5c69a 100644
>> > --- a/src/qemu/qemu_capabilities.c
>> > +++ b/src/qemu/qemu_capabilities.c
>> > @@ -1307,8 +1307,11 @@ struct virQEMUCapsStringFlags
>> virQEMUCapsObjectTypes[] = {
>> >      { "hda-micro", QEMU_CAPS_HDA_MICRO },
>> >      { "ccid-card-emulated", QEMU_CAPS_CCID_EMULATED },
>> >      { "ccid-card-passthru", QEMU_CAPS_CCID_PASSTHRU },
>> > +#if defined (__x86_64__) || \
>> > +    defined (__i386__)
>> >      { "piix3-usb-uhci", QEMU_CAPS_PIIX3_USB_UHCI },
>> >      { "piix4-usb-uhci", QEMU_CAPS_PIIX4_USB_UHCI },
>> > +#endif
>> >      { "usb-ehci", QEMU_CAPS_USB_EHCI },
>> >      { "ich9-usb-ehci1", QEMU_CAPS_ICH9_USB_EHCI1 },
>> >      { "vt82c686b-usb-uhci", QEMU_CAPS_VT82C686B_USB_UHCI },
>>
>> NACK. QEMU capabilities depend on the binary we are going to use
>> (emulator tag in domain XML), they don't depend on host architecture.
>>
>> Jirka
>>
>
>
>
> --
>
> Best Regards
> -Li
>



-- 

Best Regards
-Li
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20130228/281faa04/attachment-0001.htm>


More information about the libvir-list mailing list