migration: just lock migrate_fd_put_ready

Signed-off-by: Juan Quintela <quintela@redhat.com>
This commit is contained in:
Juan Quintela 2012-07-23 06:31:30 +02:00
parent 188a428559
commit e76274824d
2 changed files with 5 additions and 2 deletions

View file

@ -222,9 +222,7 @@ static void *buffered_file_thread(void *opaque)
/* usleep expects microseconds */ /* usleep expects microseconds */
g_usleep((expire_time - current_time)*1000); g_usleep((expire_time - current_time)*1000);
} }
qemu_mutex_lock_iothread();
buffered_put_buffer(s, NULL, 0, 0); buffered_put_buffer(s, NULL, 0, 0);
qemu_mutex_unlock_iothread();
} }
g_free(s->buffer); g_free(s->buffer);
g_free(s); g_free(s);

View file

@ -320,8 +320,10 @@ void migrate_fd_put_ready(MigrationState *s)
{ {
int ret; int ret;
qemu_mutex_lock_iothread();
if (s->state != MIG_STATE_ACTIVE) { if (s->state != MIG_STATE_ACTIVE) {
DPRINTF("put_ready returning because of non-active state\n"); DPRINTF("put_ready returning because of non-active state\n");
qemu_mutex_unlock_iothread();
return; return;
} }
if (s->first_time) { if (s->first_time) {
@ -331,6 +333,7 @@ void migrate_fd_put_ready(MigrationState *s)
if (ret < 0) { if (ret < 0) {
DPRINTF("failed, %d\n", ret); DPRINTF("failed, %d\n", ret);
migrate_fd_error(s); migrate_fd_error(s);
qemu_mutex_unlock_iothread();
return; return;
} }
} }
@ -366,6 +369,8 @@ void migrate_fd_put_ready(MigrationState *s)
} }
} }
} }
qemu_mutex_unlock_iothread();
} }
static void migrate_fd_cancel(MigrationState *s) static void migrate_fd_cancel(MigrationState *s)