[Qemu-devel] [PATCH v2 00/11] Preparation for block job mutex

Paolo Bonzini posted 11 patches 6 years, 11 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170508141310.8674-1-pbonzini@redhat.com
Test checkpatch passed
Test docker passed
Test s390x passed
block/backup.c               |   2 +-
block/commit.c               |   2 +-
block/io.c                   |  19 +-
block/mirror.c               |   2 +-
blockdev.c                   |   1 -
blockjob.c                   | 900 +++++++++++++++++++++++--------------------
include/block/blockjob.h     |  16 -
include/block/blockjob_int.h |  27 +-
tests/test-blockjob-txn.c    |   7 +-
tests/test-blockjob.c        |  10 +-
10 files changed, 522 insertions(+), 464 deletions(-)
[Qemu-devel] [PATCH v2 00/11] Preparation for block job mutex
Posted by Paolo Bonzini 6 years, 11 months ago
These are a bunch of cleanups and patches extracted from the AioContext
lock removal series.  As a general theme, the patches reorganize
blockjob.c to follow the blockjob.h/blockjob_int.h separation more
closely.  For this reason, a lot of the patches are just moving functions
around.

The blockjob.h/blockjob_int.h split later will correspond to different
locking rules, but the patches are independent from this change, and
can be applied/reviewed separately.

There is no code change from v1, but all patches now have Reviewed-by
from at least one of John and Stefan.

Thanks,

Paolo


Paolo Bonzini (11):
  blockjob: remove unnecessary check
  blockjob: remove iostatus_reset callback
  blockjob: introduce block_job_early_fail
  blockjob: introduce block_job_pause/resume_all
  blockjob: separate monitor and blockjob APIs
  blockjob: move iostatus reset inside block_job_user_resume
  blockjob: introduce block_job_cancel_async, check iostatus invariants
  blockjob: group BlockJob transaction functions together
  blockjob: strengthen a bit test-blockjob-txn
  blockjob: reorganize block_job_completed_txn_abort
  blockjob: use deferred_to_main_loop to indicate the coroutine has
    ended

 block/backup.c               |   2 +-
 block/commit.c               |   2 +-
 block/io.c                   |  19 +-
 block/mirror.c               |   2 +-
 blockdev.c                   |   1 -
 blockjob.c                   | 900 +++++++++++++++++++++++--------------------
 include/block/blockjob.h     |  16 -
 include/block/blockjob_int.h |  27 +-
 tests/test-blockjob-txn.c    |   7 +-
 tests/test-blockjob.c        |  10 +-
 10 files changed, 522 insertions(+), 464 deletions(-)

-- 
2.12.2


Re: [Qemu-devel] [PATCH v2 00/11] Preparation for block job mutex
Posted by Paolo Bonzini 6 years, 11 months ago
Ping?

On 08/05/2017 16:12, Paolo Bonzini wrote:
> These are a bunch of cleanups and patches extracted from the AioContext
> lock removal series.  As a general theme, the patches reorganize
> blockjob.c to follow the blockjob.h/blockjob_int.h separation more
> closely.  For this reason, a lot of the patches are just moving functions
> around.
> 
> The blockjob.h/blockjob_int.h split later will correspond to different
> locking rules, but the patches are independent from this change, and
> can be applied/reviewed separately.
> 
> There is no code change from v1, but all patches now have Reviewed-by
> from at least one of John and Stefan.
> 
> Thanks,
> 
> Paolo
> 
> 
> Paolo Bonzini (11):
>   blockjob: remove unnecessary check
>   blockjob: remove iostatus_reset callback
>   blockjob: introduce block_job_early_fail
>   blockjob: introduce block_job_pause/resume_all
>   blockjob: separate monitor and blockjob APIs
>   blockjob: move iostatus reset inside block_job_user_resume
>   blockjob: introduce block_job_cancel_async, check iostatus invariants
>   blockjob: group BlockJob transaction functions together
>   blockjob: strengthen a bit test-blockjob-txn
>   blockjob: reorganize block_job_completed_txn_abort
>   blockjob: use deferred_to_main_loop to indicate the coroutine has
>     ended
> 
>  block/backup.c               |   2 +-
>  block/commit.c               |   2 +-
>  block/io.c                   |  19 +-
>  block/mirror.c               |   2 +-
>  blockdev.c                   |   1 -
>  blockjob.c                   | 900 +++++++++++++++++++++++--------------------
>  include/block/blockjob.h     |  16 -
>  include/block/blockjob_int.h |  27 +-
>  tests/test-blockjob-txn.c    |   7 +-
>  tests/test-blockjob.c        |  10 +-
>  10 files changed, 522 insertions(+), 464 deletions(-)
> 

Re: [Qemu-devel] [Qemu-block] [PATCH v2 00/11] Preparation for block job mutex
Posted by Stefan Hajnoczi 6 years, 11 months ago
On Sun, May 21, 2017 at 03:17:50PM +0200, Paolo Bonzini wrote:
> Ping?

I think this should go through Jeff's tree.

Stefan
Re: [Qemu-devel] [PATCH v2 00/11] Preparation for block job mutex
Posted by Jeff Cody 6 years, 11 months ago
On Mon, May 08, 2017 at 04:12:59PM +0200, Paolo Bonzini wrote:
> These are a bunch of cleanups and patches extracted from the AioContext
> lock removal series.  As a general theme, the patches reorganize
> blockjob.c to follow the blockjob.h/blockjob_int.h separation more
> closely.  For this reason, a lot of the patches are just moving functions
> around.
> 
> The blockjob.h/blockjob_int.h split later will correspond to different
> locking rules, but the patches are independent from this change, and
> can be applied/reviewed separately.
> 
> There is no code change from v1, but all patches now have Reviewed-by
> from at least one of John and Stefan.
> 
> Thanks,
> 
> Paolo
> 
> 
> Paolo Bonzini (11):
>   blockjob: remove unnecessary check
>   blockjob: remove iostatus_reset callback
>   blockjob: introduce block_job_early_fail
>   blockjob: introduce block_job_pause/resume_all
>   blockjob: separate monitor and blockjob APIs
>   blockjob: move iostatus reset inside block_job_user_resume
>   blockjob: introduce block_job_cancel_async, check iostatus invariants
>   blockjob: group BlockJob transaction functions together
>   blockjob: strengthen a bit test-blockjob-txn
>   blockjob: reorganize block_job_completed_txn_abort
>   blockjob: use deferred_to_main_loop to indicate the coroutine has
>     ended
> 
>  block/backup.c               |   2 +-
>  block/commit.c               |   2 +-
>  block/io.c                   |  19 +-
>  block/mirror.c               |   2 +-
>  blockdev.c                   |   1 -
>  blockjob.c                   | 900 +++++++++++++++++++++++--------------------
>  include/block/blockjob.h     |  16 -
>  include/block/blockjob_int.h |  27 +-
>  tests/test-blockjob-txn.c    |   7 +-
>  tests/test-blockjob.c        |  10 +-
>  10 files changed, 522 insertions(+), 464 deletions(-)
> 
> -- 
> 2.12.2
> 

Thanks,

Applied to my block branch:

git://github.com/codyprime/qemu-kvm-jtc block

-Jeff