Message ID | 1435236788-9176-1-git-send-email-stefanha@redhat.com |
---|---|
State | New |
Headers | show |
On 06/25/2015 08:53 AM, Stefan Hajnoczi wrote: > Reclaim the dirty bitmap if an incremental backup block job is > cancelled. The ret variable may be 0 when the job is cancelled so it's > not enough to check ret < 0. > > Reviewed-by: John Snow <jsnow@redhat.com> > Reviewed-by: Max Reitz <mreitz@redhat.com> > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> > --- > block/backup.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/block/backup.c b/block/backup.c > index 4a1af68..ddf8424 100644 > --- a/block/backup.c > +++ b/block/backup.c > @@ -431,7 +431,7 @@ static void coroutine_fn backup_run(void *opaque) > > if (job->sync_bitmap) { > BdrvDirtyBitmap *bm; > - if (ret < 0) { > + if (ret < 0 || block_job_is_cancelled(&job->common)) { > /* Merge the successor back into the parent, delete nothing. */ > bm = bdrv_reclaim_dirty_bitmap(bs, job->sync_bitmap, NULL); > assert(bm); > Didn't Jeff Cody already stage this?
On Thu, Jun 25, 2015 at 12:30:56PM -0400, John Snow wrote: > > > On 06/25/2015 08:53 AM, Stefan Hajnoczi wrote: > > Reclaim the dirty bitmap if an incremental backup block job is > > cancelled. The ret variable may be 0 when the job is cancelled so it's > > not enough to check ret < 0. > > > > Reviewed-by: John Snow <jsnow@redhat.com> > > Reviewed-by: Max Reitz <mreitz@redhat.com> > > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> > > --- > > block/backup.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > diff --git a/block/backup.c b/block/backup.c > > index 4a1af68..ddf8424 100644 > > --- a/block/backup.c > > +++ b/block/backup.c > > @@ -431,7 +431,7 @@ static void coroutine_fn backup_run(void *opaque) > > > > if (job->sync_bitmap) { > > BdrvDirtyBitmap *bm; > > - if (ret < 0) { > > + if (ret < 0 || block_job_is_cancelled(&job->common)) { > > /* Merge the successor back into the parent, delete nothing. */ > > bm = bdrv_reclaim_dirty_bitmap(bs, job->sync_bitmap, NULL); > > assert(bm); > > > > Didn't Jeff Cody already stage this? Yes
On Thu, Jun 25, 2015 at 12:33:25PM -0400, Jeff Cody wrote: > On Thu, Jun 25, 2015 at 12:30:56PM -0400, John Snow wrote: > > > > > > On 06/25/2015 08:53 AM, Stefan Hajnoczi wrote: > > > Reclaim the dirty bitmap if an incremental backup block job is > > > cancelled. The ret variable may be 0 when the job is cancelled so it's > > > not enough to check ret < 0. > > > > > > Reviewed-by: John Snow <jsnow@redhat.com> > > > Reviewed-by: Max Reitz <mreitz@redhat.com> > > > Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> > > > --- > > > block/backup.c | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/block/backup.c b/block/backup.c > > > index 4a1af68..ddf8424 100644 > > > --- a/block/backup.c > > > +++ b/block/backup.c > > > @@ -431,7 +431,7 @@ static void coroutine_fn backup_run(void *opaque) > > > > > > if (job->sync_bitmap) { > > > BdrvDirtyBitmap *bm; > > > - if (ret < 0) { > > > + if (ret < 0 || block_job_is_cancelled(&job->common)) { > > > /* Merge the successor back into the parent, delete nothing. */ > > > bm = bdrv_reclaim_dirty_bitmap(bs, job->sync_bitmap, NULL); > > > assert(bm); > > > > > > > Didn't Jeff Cody already stage this? > > Yes Thanks!
On 26.06.2015 11:57, Stefan Hajnoczi wrote: > On Thu, Jun 25, 2015 at 12:33:25PM -0400, Jeff Cody wrote: >> On Thu, Jun 25, 2015 at 12:30:56PM -0400, John Snow wrote: >>> >>> On 06/25/2015 08:53 AM, Stefan Hajnoczi wrote: >>>> Reclaim the dirty bitmap if an incremental backup block job is >>>> cancelled. The ret variable may be 0 when the job is cancelled so it's >>>> not enough to check ret < 0. >>>> >>>> Reviewed-by: John Snow <jsnow@redhat.com> >>>> Reviewed-by: Max Reitz <mreitz@redhat.com> >>>> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> >>>> --- >>>> block/backup.c | 2 +- >>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>> >>>> diff --git a/block/backup.c b/block/backup.c >>>> index 4a1af68..ddf8424 100644 >>>> --- a/block/backup.c >>>> +++ b/block/backup.c >>>> @@ -431,7 +431,7 @@ static void coroutine_fn backup_run(void *opaque) >>>> >>>> if (job->sync_bitmap) { >>>> BdrvDirtyBitmap *bm; >>>> - if (ret < 0) { >>>> + if (ret < 0 || block_job_is_cancelled(&job->common)) { >>>> /* Merge the successor back into the parent, delete nothing. */ >>>> bm = bdrv_reclaim_dirty_bitmap(bs, job->sync_bitmap, NULL); >>>> assert(bm); >>>> >>> Didn't Jeff Cody already stage this? >> Yes > Thanks! It appears like I successfully confused Stefan, thanks to John not wanting to embarrass me in public. :-)
diff --git a/block/backup.c b/block/backup.c index 4a1af68..ddf8424 100644 --- a/block/backup.c +++ b/block/backup.c @@ -431,7 +431,7 @@ static void coroutine_fn backup_run(void *opaque) if (job->sync_bitmap) { BdrvDirtyBitmap *bm; - if (ret < 0) { + if (ret < 0 || block_job_is_cancelled(&job->common)) { /* Merge the successor back into the parent, delete nothing. */ bm = bdrv_reclaim_dirty_bitmap(bs, job->sync_bitmap, NULL); assert(bm);