This reverts commit e3e0003a8f6570aba1421ef99a0b383a43371a74. This commit was necessary for the 2.9 release because we were unable to fix the underlying issue(s) in time. However, we will be for 2.10.
Signed-off-by: Max Reitz <mre...@redhat.com> --- block.c | 6 +----- block/io.c | 12 ++---------- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/block.c b/block.c index 1fbbb8d606..086a12df97 100644 --- a/block.c +++ b/block.c @@ -3274,11 +3274,7 @@ int bdrv_truncate(BdrvChild *child, int64_t offset) BlockDriver *drv = bs->drv; int ret; - /* FIXME: Some format block drivers use this function instead of implicitly - * growing their file by writing beyond its end. - * See bdrv_aligned_pwritev() for an explanation why we currently - * cannot assert this permission in that case. */ - // assert(child->perm & BLK_PERM_RESIZE); + assert(child->perm & BLK_PERM_RESIZE); if (!drv) return -ENOMEDIUM; diff --git a/block/io.c b/block/io.c index 8706bfa578..bae6947032 100644 --- a/block/io.c +++ b/block/io.c @@ -1345,16 +1345,8 @@ static int coroutine_fn bdrv_aligned_pwritev(BdrvChild *child, assert(!waited || !req->serialising); assert(req->overlap_offset <= offset); assert(offset + bytes <= req->overlap_offset + req->overlap_bytes); - /* FIXME: Block migration uses the BlockBackend of the guest device at a - * point when it has not yet taken write permissions. This will be - * fixed by a future patch, but for now we have to bypass this - * assertion for block migration to work. */ - // assert(child->perm & BLK_PERM_WRITE); - /* FIXME: Because of the above, we also cannot guarantee that all format - * BDS take the BLK_PERM_RESIZE permission on their file BDS, since - * they are not obligated to do so if they do not have any parent - * that has taken the permission to write to them. */ - // assert(end_sector <= bs->total_sectors || child->perm & BLK_PERM_RESIZE); + assert(child->perm & BLK_PERM_WRITE); + assert(end_sector <= bs->total_sectors || child->perm & BLK_PERM_RESIZE); ret = notifier_with_return_list_notify(&bs->before_write_notifiers, req); -- 2.12.2