aboutsummaryrefslogtreecommitdiff
path: root/blockdev.c
diff options
context:
space:
mode:
authorVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>2021-04-28 18:17:32 +0300
committerKevin Wolf <kwolf@redhat.com>2021-04-30 12:27:47 +0200
commitae9d441706d7b7d624a342b464136804b3b7bc3a (patch)
tree77826e48fadf6d93e679b04e533970a96694627c /blockdev.c
parent397f7cc0c217cfe45f42ee21e2ad5b84f3333b67 (diff)
downloadqemu-ae9d441706d7b7d624a342b464136804b3b7bc3a.zip
qemu-ae9d441706d7b7d624a342b464136804b3b7bc3a.tar.gz
qemu-ae9d441706d7b7d624a342b464136804b3b7bc3a.tar.bz2
block: bdrv_append(): don't consume reference
We have too much comments for this feature. It seems better just don't do it. Most of real users (tests don't count) have to create additional reference. Drop also comment in external_snapshot_prepare: - bdrv_append doesn't "remove" old bs in common sense, it sounds strange - the fact that bdrv_append can fail is obvious from the context - the fact that we must rollback all changes in transaction abort is known (it's the direct role of abort) Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Message-Id: <20210428151804.439460-5-vsementsov@virtuozzo.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Diffstat (limited to 'blockdev.c')
-rw-r--r--blockdev.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/blockdev.c b/blockdev.c
index a57590a..834c230 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -1576,10 +1576,6 @@ static void external_snapshot_prepare(BlkActionState *common,
goto out;
}
- /* This removes our old bs and adds the new bs. This is an operation that
- * can fail, so we need to do it in .prepare; undoing it for abort is
- * always possible. */
- bdrv_ref(state->new_bs);
ret = bdrv_append(state->new_bs, state->old_bs, errp);
if (ret < 0) {
goto out;