This patch starts moving all tasks coming after process_incoming_migration to process_incoming_migration itself.
Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- migration-exec.c | 1 - migration-fd.c | 1 - migration-tcp.c | 1 - migration-unix.c | 1 - migration.c | 6 +++++- 5 file modificati, 5 inserzioni(+), 5 rimozioni(-) diff --git a/migration-exec.c b/migration-exec.c index 061131a..84796be 100644 --- a/migration-exec.c +++ b/migration-exec.c @@ -99,7 +99,6 @@ static void exec_accept_incoming_migration(void *opaque) qemu_set_fd_handler2(qemu_stdio_fd(f), NULL, NULL, NULL, NULL); process_incoming_migration(f); - qemu_fclose(f); } int exec_start_incoming_migration(const char *command) diff --git a/migration-fd.c b/migration-fd.c index 87705c0..21ad196 100644 --- a/migration-fd.c +++ b/migration-fd.c @@ -105,7 +105,6 @@ static void fd_accept_incoming_migration(void *opaque) qemu_set_fd_handler2(qemu_stdio_fd(f), NULL, NULL, NULL, NULL); process_incoming_migration(f); - qemu_fclose(f); } int fd_start_incoming_migration(const char *infd) diff --git a/migration-tcp.c b/migration-tcp.c index 62a6891..62c9309 100644 --- a/migration-tcp.c +++ b/migration-tcp.c @@ -136,7 +136,6 @@ static void tcp_accept_incoming_migration(void *opaque) } process_incoming_migration(f); - qemu_fclose(f); return; out: diff --git a/migration-unix.c b/migration-unix.c index 57aca11..d8d5dfa 100644 --- a/migration-unix.c +++ b/migration-unix.c @@ -146,7 +146,6 @@ static void unix_accept_incoming_migration(void *opaque) } process_incoming_migration(f); - qemu_fclose(f); return; out: diff --git a/migration.c b/migration.c index 8db1b43..a27ceb3 100644 --- a/migration.c +++ b/migration.c @@ -84,7 +84,11 @@ int qemu_start_incoming_migration(const char *uri, Error **errp) void process_incoming_migration(QEMUFile *f) { - if (qemu_loadvm_state(f) < 0) { + int ret; + + ret = qemu_loadvm_state(f); + qemu_fclose(f); + if (ret < 0) { fprintf(stderr, "load of migration failed\n"); exit(0); } -- 1.7.11.2