[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

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





On Thu, Feb 28, 2013 at 10:06 AM, Li Zhang <zhlcindy 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 redhat com> wrote:
On Wed, Feb 27, 2013 at 19:52:22 +0800, Li Zhang wrote:
> From: Li Zhang <zhlcindy 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

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]