mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 23:33:54 -06:00
migration: Add yank feature
Register yank functions on sockets to shut them down. Signed-off-by: Lukas Straub <lukasstraub2@web.de> Acked-by: Stefan Hajnoczi <stefanha@redhat.com> Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com> Message-Id: <484c6a14cc2506bebedd5a237259b91363ff8f88.1609167865.git.lukasstraub2@web.de> Signed-off-by: Markus Armbruster <armbru@redhat.com>
This commit is contained in:
parent
8ee4480692
commit
b5eea99ec2
5 changed files with 57 additions and 0 deletions
|
@ -25,6 +25,9 @@
|
|||
#include "trace.h"
|
||||
#include "multifd.h"
|
||||
|
||||
#include "qemu/yank.h"
|
||||
#include "io/channel-socket.h"
|
||||
|
||||
/* Multiple fd's */
|
||||
|
||||
#define MULTIFD_MAGIC 0x11223344U
|
||||
|
@ -974,6 +977,13 @@ int multifd_load_cleanup(Error **errp)
|
|||
for (i = 0; i < migrate_multifd_channels(); i++) {
|
||||
MultiFDRecvParams *p = &multifd_recv_state->params[i];
|
||||
|
||||
if (object_dynamic_cast(OBJECT(p->c), TYPE_QIO_CHANNEL_SOCKET)
|
||||
&& OBJECT(p->c)->ref == 1) {
|
||||
yank_unregister_function(MIGRATION_YANK_INSTANCE,
|
||||
yank_generic_iochannel,
|
||||
QIO_CHANNEL(p->c));
|
||||
}
|
||||
|
||||
object_unref(OBJECT(p->c));
|
||||
p->c = NULL;
|
||||
qemu_mutex_destroy(&p->mutex);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue