Commit 946d58be authored by Kevin Wolf's avatar Kevin Wolf
Browse files

block-migration: Flush requests in blk_mig_cleanup



When cancelling block migration, all in-flight requests of the block
migration must be completed before the data can be freed. This was
visible as failing assertions and segfaults.
Reported-by: default avatarPeter Lieven <pl@dlhnet.de>
Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
parent 6f8fd253
......@@ -519,6 +519,8 @@ static void blk_mig_cleanup(void)
BlkMigDevState *bmds;
BlkMigBlock *blk;
bdrv_drain_all();
set_dirty_tracking(0);
while ((bmds = QSIMPLEQ_FIRST(&block_mig_state.bmds_list)) != NULL) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment