From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54413) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dXJMm-0001Ww-TS for qemu-devel@nongnu.org; Mon, 17 Jul 2017 23:40:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dXJMh-00008J-E9 for qemu-devel@nongnu.org; Mon, 17 Jul 2017 23:40:08 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46678) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dXJMh-00007c-7n for qemu-devel@nongnu.org; Mon, 17 Jul 2017 23:40:03 -0400 Received: from smtp.corp.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.14]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 2CC31356F6 for ; Tue, 18 Jul 2017 03:40:02 +0000 (UTC) From: Peter Xu Date: Tue, 18 Jul 2017 11:39:09 +0800 Message-Id: <1500349150-13240-10-git-send-email-peterx@redhat.com> In-Reply-To: <1500349150-13240-1-git-send-email-peterx@redhat.com> References: <1500349150-13240-1-git-send-email-peterx@redhat.com> Subject: [Qemu-devel] [PATCH v3 09/10] migration: provide migrate_cap_add() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Eduardo Habkost , Laurent Vivier , Peter Xu , Markus Armbruster , Juan Quintela , "Dr . David Alan Gilbert" Abstracted from migrate_set_block_enabled() to allocate MigrationCapabilityStatusList properly. Reviewed-by: Juan Quintela Signed-off-by: Peter Xu --- migration/migration.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/migration/migration.c b/migration/migration.c index 43a2471..db869c4 100644 --- a/migration/migration.c +++ b/migration/migration.c @@ -841,14 +841,27 @@ void migrate_set_state(int *state, int old_state, int new_state) } } -void migrate_set_block_enabled(bool value, Error **errp) +static MigrationCapabilityStatusList *migrate_cap_add( + MigrationCapabilityStatusList *list, + MigrationCapability index, + bool state) { MigrationCapabilityStatusList *cap; cap = g_new0(MigrationCapabilityStatusList, 1); cap->value = g_new0(MigrationCapabilityStatus, 1); - cap->value->capability = MIGRATION_CAPABILITY_BLOCK; - cap->value->state = value; + cap->value->capability = index; + cap->value->state = state; + cap->next = list; + + return cap; +} + +void migrate_set_block_enabled(bool value, Error **errp) +{ + MigrationCapabilityStatusList *cap; + + cap = migrate_cap_add(NULL, MIGRATION_CAPABILITY_BLOCK, value); qmp_migrate_set_capabilities(cap, errp); qapi_free_MigrationCapabilityStatusList(cap); } -- 2.7.4