mbox series

[v4,0/3] backup: Use copy offloading

Message ID 20180703023758.14422-1-famz@redhat.com
Headers show
Series backup: Use copy offloading | expand

Message

Fam Zheng July 3, 2018, 2:37 a.m. UTC
v4: Rebase to master.
    Pick up Stefan's rev-bys.
    Include a block/io.c fix to fix a new issue caused by recent block/io.c
    change - our drive-backup cases in iotests exposes the bug loudly.

This enhances the backup job to make use of the copy offloading API. It
eliminates the necessity to use the bounce buffer as well as speeding up the
copy operation when the backend supports it.

v3: Don't forget coroutine_fn. [Stefan]
    Don't reset job->use_copy_range redundantly. [Stefan]

v2: Use helper functions. [Stefan]

Fam Zheng (3):
  block: Fix parameter checking in bdrv_co_copy_range_internal
  block: Honour BDRV_REQ_NO_SERIALISING in copy range
  backup: Use copy offloading

 block/backup.c        | 150 ++++++++++++++++++++++++++++++------------
 block/io.c            |  35 +++++-----
 block/trace-events    |   1 +
 include/block/block.h |   5 +-
 4 files changed, 132 insertions(+), 59 deletions(-)

Comments

Jeff Cody July 3, 2018, 3:25 a.m. UTC | #1
On Tue, Jul 03, 2018 at 10:37:55AM +0800, Fam Zheng wrote:
> v4: Rebase to master.
>     Pick up Stefan's rev-bys.
>     Include a block/io.c fix to fix a new issue caused by recent block/io.c
>     change - our drive-backup cases in iotests exposes the bug loudly.
> 
> This enhances the backup job to make use of the copy offloading API. It
> eliminates the necessity to use the bounce buffer as well as speeding up the
> copy operation when the backend supports it.
> 
> v3: Don't forget coroutine_fn. [Stefan]
>     Don't reset job->use_copy_range redundantly. [Stefan]
> 
> v2: Use helper functions. [Stefan]
> 
> Fam Zheng (3):
>   block: Fix parameter checking in bdrv_co_copy_range_internal
>   block: Honour BDRV_REQ_NO_SERIALISING in copy range
>   backup: Use copy offloading
> 
>  block/backup.c        | 150 ++++++++++++++++++++++++++++++------------
>  block/io.c            |  35 +++++-----
>  block/trace-events    |   1 +
>  include/block/block.h |   5 +-
>  4 files changed, 132 insertions(+), 59 deletions(-)
> 
> -- 
> 2.17.1
> 

Thanks,

Applied to my block branch:

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

-Jeff