diff options
author | Andrey Shinkevich <andrey.shinkevich@virtuozzo.com> | 2019-05-29 20:56:14 +0300 |
---|---|---|
committer | Max Reitz <mreitz@redhat.com> | 2019-07-02 03:53:04 +0200 |
commit | 170d3bd341b3955f10b40b4569f66bf3d4dbc4a0 (patch) | |
tree | 7564a524fa4dc632bbcf29c630c6ec467358eaa0 /block/stream.c | |
parent | d24f80234b39d2d5c0d91e63b5e4569d37b2399e (diff) |
block: include base when checking image chain for block allocation
This patch is used in the 'block/stream: introduce a bottom node'
that is following. Instead of the base node, the caller may pass
the node that has the base as its backing image to the function
bdrv_is_allocated_above() with a new parameter include_base = true
and get rid of the dependency on the base that may change during
commit/stream parallel jobs. Now, if the specified base is not
found in the backing image chain, the QEMU will abort.
Suggested-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Signed-off-by: Andrey Shinkevich <andrey.shinkevich@virtuozzo.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Alberto Garcia <berto@igalia.com>
Message-id: 1559152576-281803-2-git-send-email-andrey.shinkevich@virtuozzo.com
[mreitz: Squashed in the following as a rebase on conflicting patches:]
Message-id: e3cf99ae-62e9-8b6e-5a06-d3c8b9363b85@redhat.com
Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'block/stream.c')
-rw-r--r-- | block/stream.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/block/stream.c b/block/stream.c index 1a906fd860..97fddb2608 100644 --- a/block/stream.c +++ b/block/stream.c @@ -160,7 +160,7 @@ static int coroutine_fn stream_run(Job *job, Error **errp) } else if (ret >= 0) { /* Copy if allocated in the intermediate images. Limit to the * known-unallocated area [offset, offset+n*BDRV_SECTOR_SIZE). */ - ret = bdrv_is_allocated_above(backing_bs(bs), base, + ret = bdrv_is_allocated_above(backing_bs(bs), base, false, offset, n, &n); /* Finish early if end of backing file has been reached */ |