aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Xu <peterx@redhat.com>2024-02-22 17:52:58 +0800
committerPeter Xu <peterx@redhat.com>2024-02-28 11:31:28 +0800
commit0518b5d8d30d3a4d0ea4f45d61527bcdc43044d2 (patch)
tree075755e3b2734bcadf3145c67c164076b0658552
parent9221e3c6a237da90ac296adfeb6e99ea9babfc20 (diff)
downloadqemu-0518b5d8d30d3a4d0ea4f45d61527bcdc43044d2.zip
qemu-0518b5d8d30d3a4d0ea4f45d61527bcdc43044d2.tar.gz
qemu-0518b5d8d30d3a4d0ea4f45d61527bcdc43044d2.tar.bz2
migration/multifd: Drop registered_yank
With a clear definition of p->c protocol, where we only set it up if the channel is fully established (TLS or non-TLS), registered_yank boolean will have equal meaning of "p->c != NULL". Drop registered_yank by checking p->c instead. Reviewed-by: Fabiano Rosas <farosas@suse.de> Link: https://lore.kernel.org/r/20240222095301.171137-3-peterx@redhat.com Signed-off-by: Peter Xu <peterx@redhat.com>
-rw-r--r--migration/multifd.c7
-rw-r--r--migration/multifd.h2
2 files changed, 3 insertions, 6 deletions
diff --git a/migration/multifd.c b/migration/multifd.c
index 84a6b9e..1d039a4 100644
--- a/migration/multifd.c
+++ b/migration/multifd.c
@@ -666,11 +666,11 @@ static int multifd_send_channel_destroy(QIOChannel *send)
static bool multifd_send_cleanup_channel(MultiFDSendParams *p, Error **errp)
{
- if (p->registered_yank) {
+ if (p->c) {
migration_ioc_unregister_yank(p->c);
+ multifd_send_channel_destroy(p->c);
+ p->c = NULL;
}
- multifd_send_channel_destroy(p->c);
- p->c = NULL;
qemu_sem_destroy(&p->sem);
qemu_sem_destroy(&p->sem_sync);
g_free(p->name);
@@ -950,7 +950,6 @@ static bool multifd_channel_connect(MultiFDSendParams *p,
qio_channel_set_delay(ioc, false);
migration_ioc_register_yank(ioc);
- p->registered_yank = true;
/* Setup p->c only if the channel is completely setup */
p->c = ioc;
diff --git a/migration/multifd.h b/migration/multifd.h
index 8a1cad0..b3fe27a 100644
--- a/migration/multifd.h
+++ b/migration/multifd.h
@@ -78,8 +78,6 @@ typedef struct {
bool tls_thread_created;
/* communication channel */
QIOChannel *c;
- /* is the yank function registered */
- bool registered_yank;
/* packet allocated len */
uint32_t packet_len;
/* guest page size */