[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 26/31] backup: Don't leak BackupBlockJob in error pat
From: |
Kevin Wolf |
Subject: |
[Qemu-devel] [PULL 26/31] backup: Don't leak BackupBlockJob in error path |
Date: |
Wed, 25 May 2016 19:39:51 +0200 |
Signed-off-by: Kevin Wolf <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Reviewed-by: Alberto Garcia <address@hidden>
---
block/backup.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/block/backup.c b/block/backup.c
index fec45e8..a990cf1 100644
--- a/block/backup.c
+++ b/block/backup.c
@@ -485,6 +485,7 @@ void backup_start(BlockDriverState *bs, BlockDriverState
*target,
{
int64_t len;
BlockDriverInfo bdi;
+ BackupBlockJob *job = NULL;
int ret;
assert(bs);
@@ -542,8 +543,7 @@ void backup_start(BlockDriverState *bs, BlockDriverState
*target,
goto error;
}
- BackupBlockJob *job = block_job_create(&backup_job_driver, bs, speed,
- cb, opaque, errp);
+ job = block_job_create(&backup_job_driver, bs, speed, cb, opaque, errp);
if (!job) {
goto error;
}
@@ -584,4 +584,7 @@ void backup_start(BlockDriverState *bs, BlockDriverState
*target,
if (sync_bitmap) {
bdrv_reclaim_dirty_bitmap(bs, sync_bitmap, NULL);
}
+ if (job) {
+ block_job_unref(&job->common);
+ }
}
--
1.8.3.1
- [Qemu-devel] [PULL 18/31] block: keep a list of block jobs, (continued)
- [Qemu-devel] [PULL 18/31] block: keep a list of block jobs, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 22/31] block: Make blk_co_preadv/pwritev() public, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 16/31] dma-helpers: change BlockBackend to opaque value in DMAIOFunc, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 19/31] block: Cancel jobs first in bdrv_close_all(), Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 17/31] block: Rename blk_write_zeroes(), Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 24/31] mirror: Allow target that already has a BlockBackend, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 23/31] stream: Use BlockBackend for I/O, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 21/31] block: Convert block job core to BlockBackend, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 25/31] mirror: Use BlockBackend for I/O, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 28/31] backup: Remove bs parameter from backup_do_cow(), Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 26/31] backup: Don't leak BackupBlockJob in error path,
Kevin Wolf <=
- [Qemu-devel] [PULL 27/31] backup: Pack Notifier within BackupBlockJob, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 29/31] backup: Use BlockBackend for I/O, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 30/31] commit: Use BlockBackend for I/O, Kevin Wolf, 2016/05/25
- [Qemu-devel] [PULL 31/31] blockjob: Remove BlockJob.bs, Kevin Wolf, 2016/05/25
- Re: [Qemu-devel] [PULL 00/31] Block layer patches, Peter Maydell, 2016/05/26