]> git.proxmox.com Git - mirror_qemu.git/commit
block: test block-stream with a base node that is used by block-commit
authorAlberto Garcia <berto@igalia.com>
Thu, 28 Mar 2019 16:25:11 +0000 (18:25 +0200)
committerKevin Wolf <kwolf@redhat.com>
Tue, 2 Apr 2019 10:04:44 +0000 (12:04 +0200)
commitd20ba603f2d1462f7c39c6aa1f7e0968a18fda0c
tree93b4e126e2b3a4c2a07b865f444d70602e890844
parent20509c4b8b3fb2b058640d5f2e5f6d3527318792
block: test block-stream with a base node that is used by block-commit

The base node of a block-stream operation indicates the first image
from the backing chain starting from which no data is copied to the
top node.

The block-stream job allows others to use that base image, so a second
block-stream job could be writing to it at the same time. An important
restriction is that the base image must not disappear while the stream
job is ongoing. stream_start() freezes the backing chain from top to
base with that purpose but it does it too late in the code so there is
a race condition there.

This bug was fixed in the previous commit, and this patch contains an
iotest for this scenario.

Signed-off-by: Alberto Garcia <berto@igalia.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
tests/qemu-iotests/030
tests/qemu-iotests/030.out