From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46871) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z8TIv-0003fZ-LM for qemu-devel@nongnu.org; Fri, 26 Jun 2015 09:04:29 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z8TIp-0004bQ-W4 for qemu-devel@nongnu.org; Fri, 26 Jun 2015 09:04:25 -0400 Message-ID: <558D4DC6.3030400@redhat.com> Date: Fri, 26 Jun 2015 15:04:06 +0200 From: Max Reitz MIME-Version: 1.0 References: <1435236788-9176-1-git-send-email-stefanha@redhat.com> <558C2CC0.8040309@redhat.com> <20150625163325.GC13877@localhost.localdomain> <20150626095756.GI15457@stefanha-thinkpad.redhat.com> In-Reply-To: <20150626095756.GI15457@stefanha-thinkpad.redhat.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [Qemu-block] [PATCH for-2.4] block: keep bitmap if incremental backup job is cancelled List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Stefan Hajnoczi , Jeff Cody Cc: Stefan Hajnoczi , John Snow , qemu-devel@nongnu.org, qemu-block@nongnu.org, qemu-stable@nongnu.org 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 >>>> Reviewed-by: Max Reitz >>>> Signed-off-by: Stefan Hajnoczi >>>> --- >>>> 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. :-)