
Hi Eric, Thanks for your comments.
-----Original Message----- From: Eric Blake [mailto:eblake@redhat.com] Sent: Thursday, February 28, 2013 12:57 AM To: Yin Olivia-R63875 Cc: libvir-list@redhat.com Subject: Re: [libvirt] [PATCH v3 2/4] qemu: add dtb capability
On 02/27/2013 01:28 AM, Olivia Yin wrote:
Signed-off-by: Olivia Yin <hong-hua.yin@freescale.com> --- src/qemu/qemu_capabilities.c | 3 +++ src/qemu/qemu_capabilities.h | 1 + 2 files changed, 4 insertions(+), 0 deletions(-)
[not a patch review, but a general comment]
You did deep threading:
0/4 \> 1/4 \> 2/4 \> 3/4 \> 4/4
But typically we prefer shallow threading:
0/4 +> 1/4 +> 2/4 +> 3/4 \> 4/4
You may want to investigate the settings you are using with git format- patch and/or send-email.
+++ b/src/qemu/qemu_capabilities.c @@ -210,6 +210,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
"rng-random", /* 130 */ "rng-egd", + "dtb",
OK, so I lied - I'm also doing a patch review: This uses a TAB, which is forbidden by 'make syntax-check'.
I'll fix it in next version.
);
struct _virQEMUCaps { @@ -944,6 +945,8 @@ virQEMUCapsComputeCmdFlags(const char *help, } if (strstr(help, "-uuid")) virQEMUCapsSet(qemuCaps, QEMU_CAPS_UUID); + if (strstr(help, "-dtb")) + virQEMUCapsSet(qemuCaps, QEMU_CAPS_DTB);
This won't work. -dtb did not exist prior to qemu 1.2, and for all qemu newer than 1.2, we do NOT scrape '-help' output; instead, we use QMP query commands. You need to figure out the corresponding QMP command that we can use to tell when dtb support exists in qemu.
How about add QEMU_CAPS_DTB into virQEMUCapsInitQMPBasic? diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 40022c1..a5bda24 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -210,6 +210,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST, "rng-random", /* 130 */ "rng-egd", + "dtb", ); struct _virQEMUCaps { @@ -1177,6 +1178,9 @@ virQEMUCapsComputeCmdFlags(const char *help, if (version >= 1002000) virQEMUCapsSet(qemuCaps, QEMU_CAPS_DEVICE_VIDEO_PRIMARY); + + if (version >= 11000) + virQEMUCapsSet(qemuCaps, QEMU_CAPS_DTB); return 0; } @@ -2294,6 +2298,7 @@ virQEMUCapsInitQMPBasic(virQEMUCapsPtr qemuCaps) virQEMUCapsSet(qemuCaps, QEMU_CAPS_NETDEV_BRIDGE); virQEMUCapsSet(qemuCaps, QEMU_CAPS_SECCOMP_SANDBOX); virQEMUCapsSet(qemuCaps, QEMU_CAPS_NO_KVM_PIT); + virQEMUCapsSet(qemuCaps, QEMU_CAPS_DTB); }
-- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org