migration: detect error before sleeping
Reviewed-by: Orit Wasserman <owasserm@redhat.com> Reviewed-by: Juan Quintela <quintela@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
parent
059f896cef
commit
fd45ee2c64
@ -657,6 +657,10 @@ static void *migration_thread(void *opaque)
|
||||
}
|
||||
}
|
||||
|
||||
if (qemu_file_get_error(s->file)) {
|
||||
migrate_finish_set_state(s, MIG_STATE_ERROR);
|
||||
break;
|
||||
}
|
||||
current_time = qemu_get_clock_ms(rt_clock);
|
||||
if (current_time >= initial_time + BUFFER_DELAY) {
|
||||
uint64_t transferred_bytes = s->bytes_xfer;
|
||||
@ -682,9 +686,6 @@ static void *migration_thread(void *opaque)
|
||||
g_usleep((initial_time + BUFFER_DELAY - current_time)*1000);
|
||||
sleep_time += qemu_get_clock_ms(rt_clock) - current_time;
|
||||
}
|
||||
if (qemu_file_get_error(s->file)) {
|
||||
migrate_finish_set_state(s, MIG_STATE_ERROR);
|
||||
}
|
||||
}
|
||||
|
||||
qemu_mutex_lock_iothread();
|
||||
|
Loading…
Reference in New Issue
Block a user