From: Juan Quintela <quintela@redhat.com>
To: qemu-devel@nongnu.org
Cc: "Peter Xu" <peterx@redhat.com>,
"Marc-André Lureau" <marcandre.lureau@redhat.com>,
"David Hildenbrand" <david@redhat.com>,
"John Snow" <jsnow@redhat.com>, "Fam Zheng" <fam@euphon.net>,
"Hailiang Zhang" <zhanghailiang@xfusion.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
qemu-block@nongnu.org, "Gerd Hoffmann" <kraxel@redhat.com>,
"Vladimir Sementsov-Ogievskiy" <vsementsov@yandex-team.ru>,
"Leonardo Bras" <leobras@redhat.com>,
"Markus Armbruster" <armbru@redhat.com>,
"Stefan Hajnoczi" <stefanha@redhat.com>,
"Juan Quintela" <quintela@redhat.com>,
"Eric Blake" <eblake@redhat.com>
Subject: [PATCH v2 31/43] migration: Move qmp_query_migrate_parameters() to options.c
Date: Thu, 20 Apr 2023 15:39:50 +0200 [thread overview]
Message-ID: <20230420134002.29531-32-quintela@redhat.com> (raw)
In-Reply-To: <20230420134002.29531-1-quintela@redhat.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
---
migration/migration.c | 68 -------------------------------------------
migration/options.c | 68 +++++++++++++++++++++++++++++++++++++++++++
2 files changed, 68 insertions(+), 68 deletions(-)
diff --git a/migration/migration.c b/migration/migration.c
index 2bbb4e888b..dee6d836bf 100644
--- a/migration/migration.c
+++ b/migration/migration.c
@@ -886,74 +886,6 @@ void migrate_send_rp_resume_ack(MigrationIncomingState *mis, uint32_t value)
migrate_send_rp_message(mis, MIG_RP_MSG_RESUME_ACK, sizeof(buf), &buf);
}
-MigrationParameters *qmp_query_migrate_parameters(Error **errp)
-{
- MigrationParameters *params;
- MigrationState *s = migrate_get_current();
-
- /* TODO use QAPI_CLONE() instead of duplicating it inline */
- params = g_malloc0(sizeof(*params));
- params->has_compress_level = true;
- params->compress_level = s->parameters.compress_level;
- params->has_compress_threads = true;
- params->compress_threads = s->parameters.compress_threads;
- params->has_compress_wait_thread = true;
- params->compress_wait_thread = s->parameters.compress_wait_thread;
- params->has_decompress_threads = true;
- params->decompress_threads = s->parameters.decompress_threads;
- params->has_throttle_trigger_threshold = true;
- params->throttle_trigger_threshold = s->parameters.throttle_trigger_threshold;
- params->has_cpu_throttle_initial = true;
- params->cpu_throttle_initial = s->parameters.cpu_throttle_initial;
- params->has_cpu_throttle_increment = true;
- params->cpu_throttle_increment = s->parameters.cpu_throttle_increment;
- params->has_cpu_throttle_tailslow = true;
- params->cpu_throttle_tailslow = s->parameters.cpu_throttle_tailslow;
- params->tls_creds = g_strdup(s->parameters.tls_creds);
- params->tls_hostname = g_strdup(s->parameters.tls_hostname);
- params->tls_authz = g_strdup(s->parameters.tls_authz ?
- s->parameters.tls_authz : "");
- params->has_max_bandwidth = true;
- params->max_bandwidth = s->parameters.max_bandwidth;
- params->has_downtime_limit = true;
- params->downtime_limit = s->parameters.downtime_limit;
- params->has_x_checkpoint_delay = true;
- params->x_checkpoint_delay = s->parameters.x_checkpoint_delay;
- params->has_block_incremental = true;
- params->block_incremental = s->parameters.block_incremental;
- params->has_multifd_channels = true;
- params->multifd_channels = s->parameters.multifd_channels;
- params->has_multifd_compression = true;
- params->multifd_compression = s->parameters.multifd_compression;
- params->has_multifd_zlib_level = true;
- params->multifd_zlib_level = s->parameters.multifd_zlib_level;
- params->has_multifd_zstd_level = true;
- params->multifd_zstd_level = s->parameters.multifd_zstd_level;
- params->has_xbzrle_cache_size = true;
- params->xbzrle_cache_size = s->parameters.xbzrle_cache_size;
- params->has_max_postcopy_bandwidth = true;
- params->max_postcopy_bandwidth = s->parameters.max_postcopy_bandwidth;
- params->has_max_cpu_throttle = true;
- params->max_cpu_throttle = s->parameters.max_cpu_throttle;
- params->has_announce_initial = true;
- params->announce_initial = s->parameters.announce_initial;
- params->has_announce_max = true;
- params->announce_max = s->parameters.announce_max;
- params->has_announce_rounds = true;
- params->announce_rounds = s->parameters.announce_rounds;
- params->has_announce_step = true;
- params->announce_step = s->parameters.announce_step;
-
- if (s->parameters.has_block_bitmap_mapping) {
- params->has_block_bitmap_mapping = true;
- params->block_bitmap_mapping =
- QAPI_CLONE(BitmapMigrationNodeAliasList,
- s->parameters.block_bitmap_mapping);
- }
-
- return params;
-}
-
/*
* Return true if we're already in the middle of a migration
* (i.e. any of the active or setup states)
diff --git a/migration/options.c b/migration/options.c
index 0f4862b822..ccbfb9bd90 100644
--- a/migration/options.c
+++ b/migration/options.c
@@ -12,8 +12,10 @@
*/
#include "qemu/osdep.h"
+#include "qapi/clone-visitor.h"
#include "qapi/error.h"
#include "qapi/qapi-commands-migration.h"
+#include "qapi/qapi-visit-migration.h"
#include "qapi/qmp/qerror.h"
#include "sysemu/runstate.h"
#include "migration/misc.h"
@@ -662,4 +664,70 @@ AnnounceParameters *migrate_announce_params(void)
return ≈
}
+MigrationParameters *qmp_query_migrate_parameters(Error **errp)
+{
+ MigrationParameters *params;
+ MigrationState *s = migrate_get_current();
+ /* TODO use QAPI_CLONE() instead of duplicating it inline */
+ params = g_malloc0(sizeof(*params));
+ params->has_compress_level = true;
+ params->compress_level = s->parameters.compress_level;
+ params->has_compress_threads = true;
+ params->compress_threads = s->parameters.compress_threads;
+ params->has_compress_wait_thread = true;
+ params->compress_wait_thread = s->parameters.compress_wait_thread;
+ params->has_decompress_threads = true;
+ params->decompress_threads = s->parameters.decompress_threads;
+ params->has_throttle_trigger_threshold = true;
+ params->throttle_trigger_threshold = s->parameters.throttle_trigger_threshold;
+ params->has_cpu_throttle_initial = true;
+ params->cpu_throttle_initial = s->parameters.cpu_throttle_initial;
+ params->has_cpu_throttle_increment = true;
+ params->cpu_throttle_increment = s->parameters.cpu_throttle_increment;
+ params->has_cpu_throttle_tailslow = true;
+ params->cpu_throttle_tailslow = s->parameters.cpu_throttle_tailslow;
+ params->tls_creds = g_strdup(s->parameters.tls_creds);
+ params->tls_hostname = g_strdup(s->parameters.tls_hostname);
+ params->tls_authz = g_strdup(s->parameters.tls_authz ?
+ s->parameters.tls_authz : "");
+ params->has_max_bandwidth = true;
+ params->max_bandwidth = s->parameters.max_bandwidth;
+ params->has_downtime_limit = true;
+ params->downtime_limit = s->parameters.downtime_limit;
+ params->has_x_checkpoint_delay = true;
+ params->x_checkpoint_delay = s->parameters.x_checkpoint_delay;
+ params->has_block_incremental = true;
+ params->block_incremental = s->parameters.block_incremental;
+ params->has_multifd_channels = true;
+ params->multifd_channels = s->parameters.multifd_channels;
+ params->has_multifd_compression = true;
+ params->multifd_compression = s->parameters.multifd_compression;
+ params->has_multifd_zlib_level = true;
+ params->multifd_zlib_level = s->parameters.multifd_zlib_level;
+ params->has_multifd_zstd_level = true;
+ params->multifd_zstd_level = s->parameters.multifd_zstd_level;
+ params->has_xbzrle_cache_size = true;
+ params->xbzrle_cache_size = s->parameters.xbzrle_cache_size;
+ params->has_max_postcopy_bandwidth = true;
+ params->max_postcopy_bandwidth = s->parameters.max_postcopy_bandwidth;
+ params->has_max_cpu_throttle = true;
+ params->max_cpu_throttle = s->parameters.max_cpu_throttle;
+ params->has_announce_initial = true;
+ params->announce_initial = s->parameters.announce_initial;
+ params->has_announce_max = true;
+ params->announce_max = s->parameters.announce_max;
+ params->has_announce_rounds = true;
+ params->announce_rounds = s->parameters.announce_rounds;
+ params->has_announce_step = true;
+ params->announce_step = s->parameters.announce_step;
+
+ if (s->parameters.has_block_bitmap_mapping) {
+ params->has_block_bitmap_mapping = true;
+ params->block_bitmap_mapping =
+ QAPI_CLONE(BitmapMigrationNodeAliasList,
+ s->parameters.block_bitmap_mapping);
+ }
+
+ return params;
+}
--
2.39.2
next prev parent reply other threads:[~2023-04-20 13:43 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-20 13:39 [PATCH v2 00/43] Migration: Create options.c for capabilities/params/properties Juan Quintela
2023-04-20 13:39 ` [PATCH v2 01/43] migration: move migration_global_dump() to migration-hmp-cmds.c Juan Quintela
2023-04-20 13:39 ` [PATCH v2 02/43] spice: move client_migrate_info command to ui/ Juan Quintela
2023-04-20 13:39 ` [PATCH v2 03/43] migration: Create migration_cap_set() Juan Quintela
2023-04-20 18:44 ` Fabiano Rosas
2023-04-20 19:22 ` Juan Quintela
2023-04-20 13:39 ` [PATCH v2 04/43] migration: Create options.c Juan Quintela
2023-04-20 13:39 ` [PATCH v2 05/43] migration: Move migrate_colo_enabled() to options.c Juan Quintela
2023-04-20 13:39 ` [PATCH v2 06/43] migration: Move migrate_use_compression() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 07/43] migration: Move migrate_use_events() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 08/43] migration: Move migrate_use_multifd() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 09/43] migration: Move migrate_use_zero_copy_send() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 10/43] migration: Move migrate_use_xbzrle() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 11/43] migration: Move migrate_use_block() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 12/43] migration: Move migrate_use_return() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 13/43] migration: Create migrate_rdma_pin_all() function Juan Quintela
2023-04-20 18:46 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 14/43] migration: Move migrate_caps_check() to options.c Juan Quintela
2023-04-20 18:09 ` Vladimir Sementsov-Ogievskiy
2023-04-20 13:39 ` [PATCH v2 15/43] migration: Move qmp_query_migrate_capabilities() " Juan Quintela
2023-04-20 18:10 ` Vladimir Sementsov-Ogievskiy
2023-04-20 13:39 ` [PATCH v2 16/43] migration: Move qmp_migrate_set_capabilities() " Juan Quintela
2023-04-20 18:11 ` Vladimir Sementsov-Ogievskiy
2023-04-20 13:39 ` [PATCH v2 17/43] migration: Move migrate_cap_set() " Juan Quintela
2023-04-20 18:12 ` Vladimir Sementsov-Ogievskiy
2023-04-20 13:39 ` [PATCH v2 18/43] migration: Move parameters functions to option.c Juan Quintela
2023-04-20 18:28 ` Vladimir Sementsov-Ogievskiy
2023-04-20 13:39 ` [PATCH v2 19/43] migration: Use migrate_max_postcopy_bandwidth() Juan Quintela
2023-04-20 18:30 ` Vladimir Sementsov-Ogievskiy
2023-04-20 13:39 ` [PATCH v2 20/43] migration: Move migrate_use_block_incremental() to option.c Juan Quintela
2023-04-20 18:31 ` Vladimir Sementsov-Ogievskiy
2023-04-20 13:39 ` [PATCH v2 21/43] migration: Create migrate_throttle_trigger_threshold() Juan Quintela
2023-04-20 18:47 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 22/43] migration: Create migrate_checkpoint_delay() Juan Quintela
2023-04-20 19:00 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 23/43] migration: Create migrate_max_cpu_throttle() Juan Quintela
2023-04-20 19:01 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 24/43] migration: Move migrate_announce_params() to option.c Juan Quintela
2023-04-20 19:04 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 25/43] migration: Create migrate_cpu_throttle_initial() " Juan Quintela
2023-04-20 19:08 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 26/43] migration: Create migrate_cpu_throttle_increment() function Juan Quintela
2023-04-20 19:10 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 27/43] migration: Create migrate_cpu_throttle_tailslow() function Juan Quintela
2023-04-20 19:11 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 28/43] migration: Move migrate_use_tls() to options.c Juan Quintela
2023-04-20 19:19 ` Fabiano Rosas
2023-04-20 21:07 ` Juan Quintela
2023-04-20 13:39 ` [PATCH v2 29/43] migration: Move migrate_postcopy() " Juan Quintela
2023-04-20 19:25 ` Fabiano Rosas
2023-04-20 13:39 ` [PATCH v2 30/43] migration: Create migrate_max_bandwidth() function Juan Quintela
2023-04-20 19:30 ` Fabiano Rosas
2023-04-20 13:39 ` Juan Quintela [this message]
2023-04-20 13:39 ` [PATCH v2 32/43] migration: Move qmp_migrate_set_parameters() to options.c Juan Quintela
2023-04-20 13:39 ` [PATCH v2 33/43] migration: Create migrate_params_init() function Juan Quintela
2023-04-20 13:39 ` [PATCH v2 34/43] migration: Make all functions check have the same format Juan Quintela
2023-04-20 13:39 ` [PATCH v2 35/43] migration: Create migrate_downtime_limit() function Juan Quintela
2023-04-20 13:39 ` [PATCH v2 36/43] migration: Move migrate_set_block_incremental() to options.c Juan Quintela
2023-04-20 13:39 ` [PATCH v2 37/43] migration: Move block_cleanup_parameters() " Juan Quintela
2023-04-20 13:39 ` [PATCH v2 38/43] migration: Remove MigrationState from block_cleanup_parameters() Juan Quintela
2023-04-20 13:39 ` [PATCH v2 39/43] migration: Create migrate_tls_creds() function Juan Quintela
2023-04-20 13:39 ` [PATCH v2 40/43] migration: Create migrate_tls_authz() function Juan Quintela
2023-04-20 13:40 ` [PATCH v2 41/43] migration: Create migrate_tls_hostname() function Juan Quintela
2023-04-20 13:40 ` [PATCH v2 42/43] migration: Create migrate_block_bitmap_mapping() function Juan Quintela
2023-04-20 13:40 ` [PATCH v2 43/43] migration: Move migration_properties to options.c Juan Quintela
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230420134002.29531-32-quintela@redhat.com \
--to=quintela@redhat.com \
--cc=armbru@redhat.com \
--cc=david@redhat.com \
--cc=eblake@redhat.com \
--cc=fam@euphon.net \
--cc=jsnow@redhat.com \
--cc=kraxel@redhat.com \
--cc=leobras@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=mst@redhat.com \
--cc=peterx@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@redhat.com \
--cc=vsementsov@yandex-team.ru \
--cc=zhanghailiang@xfusion.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).