multifd: Implement yank for multifd send side
To: qemu-devel <qemu-devel@nongnu.org> Cc: "Dr. David Alan Gilbert" <dgilbert@redhat.com>, Juan Quintela <quintela@redhat.com>, Peter Xu <peterx@redhat.com>, Leonardo Bras Soares Passos <lsoaresp@redhat.com> Date: Wed, 1 Sep 2021 17:58:57 +0200 (1 week, 15 hours, 17 minutes ago) [[PGP Signed Part:No public key for 35AB0B289C5DB258 created at 2021-09-01T17:58:57+0200 using RSA]] When introducing yank functionality in the migration code I forgot to cover the multifd send side. Signed-off-by: Lukas Straub <lukasstraub2@web.de> Tested-by: Leonardo Bras <leobras@redhat.com> Reviewed-by: Leonardo Bras <leobras@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
parent
362534a643
commit
20171ea895
@ -546,6 +546,9 @@ void multifd_save_cleanup(void)
|
||||
MultiFDSendParams *p = &multifd_send_state->params[i];
|
||||
Error *local_err = NULL;
|
||||
|
||||
if (p->registered_yank) {
|
||||
migration_ioc_unregister_yank(p->c);
|
||||
}
|
||||
socket_send_channel_destroy(p->c);
|
||||
p->c = NULL;
|
||||
qemu_mutex_destroy(&p->mutex);
|
||||
@ -813,7 +816,8 @@ static bool multifd_channel_connect(MultiFDSendParams *p,
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
/* update for tls qio channel */
|
||||
migration_ioc_register_yank(ioc);
|
||||
p->registered_yank = true;
|
||||
p->c = ioc;
|
||||
qemu_thread_create(&p->thread, p->name, multifd_send_thread, p,
|
||||
QEMU_THREAD_JOINABLE);
|
||||
|
@ -85,6 +85,8 @@ typedef struct {
|
||||
bool running;
|
||||
/* should this thread finish */
|
||||
bool quit;
|
||||
/* is the yank function registered */
|
||||
bool registered_yank;
|
||||
/* thread has work to do */
|
||||
int pending_job;
|
||||
/* array of pages to sent */
|
||||
|
Loading…
x
Reference in New Issue
Block a user