[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 5/6] blockjob: refactor backup_start as backu
From: |
Jeff Cody |
Subject: |
Re: [Qemu-devel] [PATCH v4 5/6] blockjob: refactor backup_start as backup_job_create |
Date: |
Wed, 9 Nov 2016 11:19:37 -0500 |
User-agent: |
Mutt/1.5.24 (2015-08-30) |
On Tue, Nov 08, 2016 at 01:50:38AM -0500, John Snow wrote:
> Refactor backup_start as backup_job_create, which only creates the job,
> but does not automatically start it. The old interface, 'backup_start',
> is not kept in favor of limiting the number of nearly-identical interfaces
> that would have to be edited to keep up with QAPI changes in the future.
>
> Callers that wish to synchronously start the backup_block_job can
> instead just call block_job_start immediately after calling
> backup_job_create.
>
> Transactions are updated to use the new interface, calling block_job_start
> only during the .commit phase, which helps prevent race conditions where
> jobs may finish before we even finish building the transaction. This may
> happen, for instance, during empty block backup jobs.
>
> Reported-by: Vladimir Sementsov-Ogievskiy <address@hidden>
> Signed-off-by: John Snow <address@hidden>
> ---
> block/backup.c | 26 ++++++++-------
> block/replication.c | 12 ++++---
> blockdev.c | 81
> ++++++++++++++++++++++++++++++-----------------
> include/block/block_int.h | 23 +++++++-------
> 4 files changed, 85 insertions(+), 57 deletions(-)
Reviewed-by: Jeff Cody <address@hidden>
- [Qemu-devel] [PATCH v4 0/6] jobs: fix transactional race condition, John Snow, 2016/11/08
- [Qemu-devel] [PATCH v4 2/6] blockjob: add .clean property, John Snow, 2016/11/08
- [Qemu-devel] [PATCH v4 3/6] blockjob: add .start field, John Snow, 2016/11/08
- [Qemu-devel] [PATCH v4 4/6] blockjob: add block_job_start, John Snow, 2016/11/08
- [Qemu-devel] [PATCH v4 6/6] iotests: add transactional failure race test, John Snow, 2016/11/08
- [Qemu-devel] [PATCH v4 1/6] blockjob: fix dead pointer in txn list, John Snow, 2016/11/08
- [Qemu-devel] [PATCH v4 5/6] blockjob: refactor backup_start as backup_job_create, John Snow, 2016/11/08
- Re: [Qemu-devel] [PATCH v4 5/6] blockjob: refactor backup_start as backup_job_create,
Jeff Cody <=
- Re: [Qemu-devel] [PATCH v4 0/6] jobs: fix transactional race condition, Jeff Cody, 2016/11/09
- Re: [Qemu-devel] [PATCH v4 0/6] jobs: fix transactional race condition, Jeff Cody, 2016/11/09
- Re: [Qemu-devel] [PATCH v4 0/6] jobs: fix transactional race condition, John Snow, 2016/11/14