]> git.proxmox.com Git - mirror_qemu.git/commit
mirror: Keep s->synced on error
authorHanna Reitz <hreitz@redhat.com>
Wed, 6 Oct 2021 15:19:29 +0000 (17:19 +0200)
committerVladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Thu, 7 Oct 2021 08:40:48 +0000 (10:40 +0200)
commita3810da5cff152a2a1b2d25a8b8080f640e491b6
tree8c357bb3ba58ede035547f037b544da6e8059b6b
parentd431131439f228626aedc6d211c73b2a3616d5e1
mirror: Keep s->synced on error

An error does not take us out of the READY phase, which is what
s->synced signifies.  It does of course mean that source and target are
no longer in sync, but that is what s->actively_sync is for -- s->synced
never meant that source and target are in sync, only that they were at
some point (and at that point we transitioned into the READY phase).

The tangible problem is that we transition to READY once we are in sync
and s->synced is false.  By resetting s->synced here, we will transition
from READY to READY once the error is resolved (if the job keeps
running), and that transition is not allowed.

Signed-off-by: Hanna Reitz <hreitz@redhat.com>
Reviewed-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
Reviewed-by: Kevin Wolf <kwolf@redhat.com>
Message-Id: <20211006151940.214590-3-hreitz@redhat.com>
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
block/mirror.c