Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- migration.c | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/migration.c b/migration.c index 5e2077e..63ecab5 100644 --- a/migration.c +++ b/migration.c @@ -644,6 +644,10 @@ static void *migration_thread(void *opaque) } } } + if (qemu_file_get_error(s->file)) { + __sync_val_compare_and_swap(&s->state, MIG_STATE_ACTIVE, MIG_STATE_ERROR); + break; + } if (current_time >= initial_time + BUFFER_DELAY) { uint64_t transferred_bytes = s->bytes_xfer; uint64_t time_spent = current_time - initial_time; @@ -661,9 +665,6 @@ static void *migration_thread(void *opaque) /* usleep expects microseconds */ g_usleep((initial_time + BUFFER_DELAY - current_time)*1000); } - if (qemu_file_get_error(s->file)) { - __sync_val_compare_and_swap(&s->state, MIG_STATE_ACTIVE, MIG_STATE_ERROR); - } } qemu_mutex_lock_iothread(); -- 1.7.1