Commit 8b6b2afc authored by Pierre Riteau's avatar Pierre Riteau Committed by Kevin Wolf
Browse files

Avoid divide by zero when there is no block device to migrate



When block migration is requested and no read-write block device is
present, a divide by zero exception is triggered because
total_sector_sum equals zero.

Signed-off-by: default avatarPierre Riteau <Pierre.Riteau@irisa.fr>
Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
parent 70b4f4bb
......@@ -350,7 +350,12 @@ static int blk_mig_save_bulked_block(Monitor *mon, QEMUFile *f)
}
}
progress = completed_sector_sum * 100 / block_mig_state.total_sector_sum;
if (block_mig_state.total_sector_sum != 0) {
progress = completed_sector_sum * 100 /
block_mig_state.total_sector_sum;
} else {
progress = 100;
}
if (progress != block_mig_state.prev_progress) {
block_mig_state.prev_progress = progress;
qemu_put_be64(f, (progress << BDRV_SECTOR_BITS)
......
Supports Markdown
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