commit: Add 'base' to the reopen queue before 'overlay_bs'
Now that we're checking for duplicates in the reopen queue, there's no need to force a specific order in which the queue is constructed so we can revert 3db2bd5508c86a1605258bc77c9672d93b5c350e. Since both ways of constructing the queue are now valid, this patch doesn't have any effect on the behavior of QEMU and is not strictly necessary. However it can help us check that the fix for the reopen queue is robust: if it stops working properly at some point, iotest 040 will break. Signed-off-by: Alberto Garcia <berto@igalia.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
This commit is contained in:
parent
5b7ba05fe7
commit
0fe282bb4b
@ -242,14 +242,14 @@ void commit_start(const char *job_id, BlockDriverState *bs,
|
|||||||
orig_overlay_flags = bdrv_get_flags(overlay_bs);
|
orig_overlay_flags = bdrv_get_flags(overlay_bs);
|
||||||
|
|
||||||
/* convert base & overlay_bs to r/w, if necessary */
|
/* convert base & overlay_bs to r/w, if necessary */
|
||||||
if (!(orig_overlay_flags & BDRV_O_RDWR)) {
|
|
||||||
reopen_queue = bdrv_reopen_queue(reopen_queue, overlay_bs, NULL,
|
|
||||||
orig_overlay_flags | BDRV_O_RDWR);
|
|
||||||
}
|
|
||||||
if (!(orig_base_flags & BDRV_O_RDWR)) {
|
if (!(orig_base_flags & BDRV_O_RDWR)) {
|
||||||
reopen_queue = bdrv_reopen_queue(reopen_queue, base, NULL,
|
reopen_queue = bdrv_reopen_queue(reopen_queue, base, NULL,
|
||||||
orig_base_flags | BDRV_O_RDWR);
|
orig_base_flags | BDRV_O_RDWR);
|
||||||
}
|
}
|
||||||
|
if (!(orig_overlay_flags & BDRV_O_RDWR)) {
|
||||||
|
reopen_queue = bdrv_reopen_queue(reopen_queue, overlay_bs, NULL,
|
||||||
|
orig_overlay_flags | BDRV_O_RDWR);
|
||||||
|
}
|
||||||
if (reopen_queue) {
|
if (reopen_queue) {
|
||||||
bdrv_reopen_multiple(reopen_queue, &local_err);
|
bdrv_reopen_multiple(reopen_queue, &local_err);
|
||||||
if (local_err != NULL) {
|
if (local_err != NULL) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user