All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v8 00/11] qemu-img convert with copy offloading
@ 2018-06-01  6:28 Fam Zheng
  2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 01/11] docker: Update fedora image to 28 Fam Zheng
                   ` (11 more replies)
  0 siblings, 12 replies; 18+ messages in thread
From: Fam Zheng @ 2018-06-01  6:28 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, Ronnie Sahlberg, Alex Bennée, qemu-block,
	Kevin Wolf, Fam Zheng, Peter Lieven, Max Reitz,
	Philippe Mathieu-Daudé,
	Stefan Hajnoczi, eblake

v8: Fix compiling against new glibc and libiscsi on Fedora 28 where v7 had
    conflict definitions. [Stefan, myself]
    - Add HAVE_COPY_FILE_RANGE in configure.
    - Drop IDENT_DESCR_TGT_DESCR from scsi constants header.

v7: Fix qcow2.

v6: Pick up rev-by from Stefan and Eric.
    Tweak patch 2 commit message.

v5: - Fix raw offset/bytes check for read. [Eric]
    - Fix qcow2_handle_l2meta. [Stefan]
    - Add coroutine_fn whereever appropriate. [Stefan]

v4: - Fix raw offset and size. [Eric]
    - iscsi: Drop unnecessary return values and variables in favor of
      constants. [Stefan]
    - qcow2: Handle small backing case. [Stefan]
    - file-posix: Translate ENOSYS to ENOTSUP. [Stefan]
    - API documentation and commit message. [Stefan]
    - Add rev-by to patches 3, 5 - 10. [Stefan, Eric]

This series introduces block layer API for copy offloading and makes use of it
in qemu-img convert.

For now we implemented the operation in local file protocol with
copy_file_range(2).  Besides that it's possible to add similar to iscsi, nfs
and potentially more.

As far as its usage goes, in addition to qemu-img convert, we can emulate
offloading in scsi-disk (handle EXTENDED COPY command), and use the API in
block jobs too.

Fam Zheng (11):
  docker: Update fedora image to 28
  block: Introduce API for copy offloading
  raw: Check byte range uniformly
  raw: Implement copy offloading
  qcow2: Implement copy offloading
  file-posix: Implement bdrv_co_copy_range
  iscsi: Query and save device designator when opening
  iscsi: Create and use iscsi_co_wait_for_task
  iscsi: Implement copy offloading
  block-backend: Add blk_co_copy_range
  qemu-img: Convert with copy offloading

 block/block-backend.c                  |  18 ++
 block/file-posix.c                     |  98 +++++++-
 block/io.c                             |  97 ++++++++
 block/iscsi.c                          | 314 ++++++++++++++++++++++---
 block/qcow2.c                          | 229 +++++++++++++++---
 block/raw-format.c                     |  96 ++++++--
 configure                              |  17 ++
 include/block/block.h                  |  32 +++
 include/block/block_int.h              |  38 +++
 include/block/raw-aio.h                |  10 +-
 include/scsi/constants.h               |   4 +
 include/sysemu/block-backend.h         |   4 +
 qemu-img.c                             |  50 +++-
 tests/docker/dockerfiles/fedora.docker |   2 +-
 14 files changed, 909 insertions(+), 100 deletions(-)

-- 
2.17.0

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2018-06-01  9:51 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-01  6:28 [Qemu-devel] [PATCH v8 00/11] qemu-img convert with copy offloading Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 01/11] docker: Update fedora image to 28 Fam Zheng
2018-06-01  9:31   ` Stefan Hajnoczi
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 02/11] block: Introduce API for copy offloading Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 03/11] raw: Check byte range uniformly Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 04/11] raw: Implement copy offloading Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 05/11] qcow2: " Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 06/11] file-posix: Implement bdrv_co_copy_range Fam Zheng
2018-06-01  9:35   ` Stefan Hajnoczi
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 07/11] iscsi: Query and save device designator when opening Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 08/11] iscsi: Create and use iscsi_co_wait_for_task Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 09/11] iscsi: Implement copy offloading Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 10/11] block-backend: Add blk_co_copy_range Fam Zheng
2018-06-01  6:28 ` [Qemu-devel] [PATCH v8 11/11] qemu-img: Convert with copy offloading Fam Zheng
2018-06-01  6:45 ` [Qemu-devel] [PATCH v8 00/11] qemu-img convert " no-reply
2018-06-01  9:21   ` Fam Zheng
2018-06-01  9:37   ` Stefan Hajnoczi
2018-06-01  9:51     ` Fam Zheng

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.