Skip to content

Commit

Permalink
migration: Fix possible race when setting rp_state.error
Browse files Browse the repository at this point in the history
We don't need to set the rp_state.error right after a shutdown because
qemu_file_shutdown() always sets the QEMUFile error, so the return
path thread would have seen it and set the rp error itself.

Setting the error outside of the thread is also racy because the
thread could clear it after we set it.

Reviewed-by: Peter Xu <peterx@redhat.com>
Signed-off-by: Fabiano Rosas <farosas@suse.de>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-ID: <20230918172822.19052-3-farosas@suse.de>
  • Loading branch information
Fabiano Rosas authored and stefanhaRH committed Sep 27, 2023
1 parent cf02f29 commit 28a8347
Showing 1 changed file with 0 additions and 1 deletion.
1 change: 0 additions & 1 deletion migration/migration.c
Original file line number Diff line number Diff line change
Expand Up @@ -2074,7 +2074,6 @@ static int await_return_path_close_on_source(MigrationState *ms)
* waiting for the destination.
*/
qemu_file_shutdown(ms->rp_state.from_dst_file);
mark_source_rp_bad(ms);
}
trace_await_return_path_close_on_source_joining();
qemu_thread_join(&ms->rp_state.rp_thread);
Expand Down

0 comments on commit 28a8347

Please sign in to comment.