aboutsummaryrefslogtreecommitdiff
path: root/include/migration
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>2023-05-15 16:06:40 +0300
committerJuan Quintela <quintela@redhat.com>2023-05-18 18:40:51 +0200
commitd0a14a2ba01c7b200e6ce3e7979e1ed3ede1d5c7 (patch)
treed1ea02b4b95b9946d28a3c4e37f0c93d6584f065 /include/migration
parentdd42ce24a3cda4be3c839aceb91fdf85e31c194f (diff)
downloadqemu-d0a14a2ba01c7b200e6ce3e7979e1ed3ede1d5c7.zip
qemu-d0a14a2ba01c7b200e6ce3e7979e1ed3ede1d5c7.tar.gz
qemu-d0a14a2ba01c7b200e6ce3e7979e1ed3ede1d5c7.tar.bz2
migration: process_incoming_migration_co(): move colo part to colo
Let's make better public interface for COLO: instead of colo_process_incoming_thread and not trivial logic around creating the thread let's make simple colo_incoming_co(), hiding implementation from generic code. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru> Reviewed-by: Juan Quintela <quintela@redhat.com> Message-Id: <20230515130640.46035-4-vsementsov@yandex-team.ru> Signed-off-by: Juan Quintela <quintela@redhat.com>
Diffstat (limited to 'include/migration')
-rw-r--r--include/migration/colo.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/include/migration/colo.h b/include/migration/colo.h
index 7ef3154..eaac07f 100644
--- a/include/migration/colo.h
+++ b/include/migration/colo.h
@@ -28,7 +28,6 @@ bool migration_in_colo_state(void);
int migration_incoming_enable_colo(void);
void migration_incoming_disable_colo(void);
bool migration_incoming_colo_enabled(void);
-void *colo_process_incoming_thread(void *opaque);
bool migration_incoming_in_colo_state(void);
COLOMode get_colo_mode(void);
@@ -44,5 +43,13 @@ void colo_do_failover(void);
*/
void colo_checkpoint_delay_set(void);
+/*
+ * Starts COLO incoming process. Called from process_incoming_migration_co()
+ * after loading the state.
+ *
+ * Called with BQL locked, may temporary release BQL.
+ */
+int coroutine_fn colo_incoming_co(void);
+
void colo_shutdown(void);
#endif