Commit 3d94ce60 authored by Peter Lieven's avatar Peter Lieven Committed by Kevin Wolf

block: expect get_block_status errors in bdrv_make_zero

during testing around with 4k LUNs a bad target implementation
triggert an -EIO in iscsi_get_block_status, but it got never caught
resulting in an infinite loop.

Signed-off-by: default avatarPeter Lieven <>
Reviewed-by: default avatarStefan Hajnoczi <>
Signed-off-by: default avatarKevin Wolf <>
parent f671d173
......@@ -2421,6 +2421,11 @@ int bdrv_make_zero(BlockDriverState *bs, BdrvRequestFlags flags)
nb_sectors = INT_MAX;
ret = bdrv_get_block_status(bs, sector_num, nb_sectors, &n);
if (ret < 0) {
error_report("error getting block status at sector %" PRId64 ": %s",
sector_num, strerror(-ret));
return ret;
if (ret & BDRV_BLOCK_ZERO) {
sector_num += n;
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