From f19e44bc9d5b9302d9ca4dcee52de3fc5d8b50f5 Mon Sep 17 00:00:00 2001 From: Stefan Weil Date: Sun, 8 Feb 2015 15:40:48 +0100 Subject: [PATCH 1/4] hmp: Fix warning from smatch (wrong argument in function call) Fix this warning: hmp.c:414:38: warning: Using plain integer as NULL pointer qmp_query_block expects a pointer argument, so passing false is wrong. Cc: Luiz Capitulino Signed-off-by: Stefan Weil Reviewed-by: Markus Armbruster Signed-off-by: Luiz Capitulino --- hmp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hmp.c b/hmp.c index b47f331f4d..7690323e28 100644 --- a/hmp.c +++ b/hmp.c @@ -411,7 +411,7 @@ void hmp_info_block(Monitor *mon, const QDict *qdict) /* Print BlockBackend information */ if (!nodes) { - block_list = qmp_query_block(false); + block_list = qmp_query_block(NULL); } else { block_list = NULL; } From 438e8289d7746188f0684313d25d38d2a77747c9 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Tue, 10 Feb 2015 15:40:30 -0700 Subject: [PATCH 2/4] balloon: Fix typo Commit 422e0501 introduced a typo (unless removing an 'o' from balloon is how you deflate it?) Signed-off-by: Eric Blake Reviewed-by: Markus Armbruster Signed-off-by: Luiz Capitulino --- balloon.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/balloon.c b/balloon.c index dea19a470a..70c00f5f84 100644 --- a/balloon.c +++ b/balloon.c @@ -36,7 +36,7 @@ static QEMUBalloonEvent *balloon_event_fn; static QEMUBalloonStatus *balloon_stat_fn; static void *balloon_opaque; -static bool have_ballon(Error **errp) +static bool have_balloon(Error **errp) { if (kvm_enabled() && !kvm_has_sync_mmu()) { error_set(errp, ERROR_CLASS_KVM_MISSING_CAP, @@ -81,7 +81,7 @@ BalloonInfo *qmp_query_balloon(Error **errp) { BalloonInfo *info; - if (!have_ballon(errp)) { + if (!have_balloon(errp)) { return NULL; } @@ -92,7 +92,7 @@ BalloonInfo *qmp_query_balloon(Error **errp) void qmp_balloon(int64_t target, Error **errp) { - if (!have_ballon(errp)) { + if (!have_balloon(errp)) { return; } From 606ee8f5eadd79627216bbdde4da0337cb7d4360 Mon Sep 17 00:00:00 2001 From: Gonglei Date: Thu, 12 Feb 2015 09:57:20 +0800 Subject: [PATCH 3/4] monitor: Fix missing err = NULL in client_migrate_info() When SPICE isn't used, we either fail an assertion in error_set(), or leak an error object. Broken in commit b25d81b. Cc: Markus Armbruster Signed-off-by: Gonglei Reviewed-by: Markus Armbruster Signed-off-by: Luiz Capitulino --- monitor.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/monitor.c b/monitor.c index c3cc060b45..137d23fcc1 100644 --- a/monitor.c +++ b/monitor.c @@ -1095,12 +1095,13 @@ static int client_migrate_info(Monitor *mon, const QDict *qdict, const char *subject = qdict_get_try_str(qdict, "cert-subject"); int port = qdict_get_try_int(qdict, "port", -1); int tls_port = qdict_get_try_int(qdict, "tls-port", -1); - Error *err; + Error *err = NULL; int ret; if (strcmp(protocol, "spice") == 0) { if (!qemu_using_spice(&err)) { qerror_report_err(err); + error_free(err); return -1; } From 912ae9c88669d0a0cbae1f20b8c80dde8e526251 Mon Sep 17 00:00:00 2001 From: "Michael S. Tsirkin" Date: Thu, 19 Feb 2015 11:13:10 +0100 Subject: [PATCH 4/4] qapi-types: add C99 index names to arrays It's not easy to figure out how monitor translates strings: most QEMU code deals with translated indexes, these are translated using _lookup arrays, so you need to find the array name, and find the appropriate offset. This patch adds C99 indexes to lookup arrays, which makes it possible to find the correct key using simple grep, and see that the matching is correct at a glance. Example: Before: const char *MigrationCapability_lookup[] = { "xbzrle", "rdma-pin-all", "auto-converge", "zero-blocks", NULL, }; After: const char *MigrationCapability_lookup[] = { [MIGRATION_CAPABILITY_XBZRLE] = "xbzrle", [MIGRATION_CAPABILITY_RDMA_PIN_ALL] = "rdma-pin-all", [MIGRATION_CAPABILITY_AUTO_CONVERGE] = "auto-converge", [MIGRATION_CAPABILITY_ZERO_BLOCKS] = "zero-blocks", [MIGRATION_CAPABILITY_MAX] = NULL, }; Signed-off-by: Michael S. Tsirkin Reviewed-by: Eric Blake Signed-off-by: Luiz Capitulino --- scripts/qapi-types.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/scripts/qapi-types.py b/scripts/qapi-types.py index 1eb272dd26..db872180c6 100644 --- a/scripts/qapi-types.py +++ b/scripts/qapi-types.py @@ -123,16 +123,19 @@ def generate_enum_lookup(name, values): name=name) i = 0 for value in values: + index = generate_enum_full_value(name, value) ret += mcgen(''' - "%(value)s", + [%(index)s] = "%(value)s", ''', - value=value) + index = index, value = value) + max_index = generate_enum_full_value(name, 'MAX') ret += mcgen(''' - NULL, + [%(max_index)s] = NULL, }; -''') +''', + max_index=max_index) return ret def generate_enum(name, values):