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(a)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(a)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