qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] Make blockdev-mirror dest sparse in more cases
@ 2025-04-11  1:04 Eric Blake
  2025-04-11  1:04 ` [PATCH 1/6] mirror: Skip pre-zeroing destination if it is already zero Eric Blake
                   ` (7 more replies)
  0 siblings, 8 replies; 23+ messages in thread
From: Eric Blake @ 2025-04-11  1:04 UTC (permalink / raw)
  To: qemu-devel

When mirroring images, it makes sense for the destination to be sparse
even if it was not connected with "discard":"unmap"; the only time the
destination should be fully allocated is if the user pre-allocated it,
or if the source was not sparse.

Eric Blake (6):
  mirror: Skip pre-zeroing destination if it is already zero
  file-posix: Allow lseek at offset 0 when !want_zero
  mirror: Skip writing zeroes when target is already zero
  block: Expand block status mode from bool to enum
  file-posix: Recognize blockdev-create file as starting all zero
  tests: Add iotest mirror-sparse for recent patches

 block/coroutines.h                         |   4 +-
 include/block/block-common.h               |  26 ++++
 include/block/block_int-common.h           |  25 ++--
 include/block/block_int-io.h               |   4 +-
 block/io.c                                 |  51 +++----
 block/blkdebug.c                           |   6 +-
 block/copy-before-write.c                  |   4 +-
 block/file-posix.c                         |  94 +++++++++++--
 block/gluster.c                            |   4 +-
 block/iscsi.c                              |   6 +-
 block/mirror.c                             | 100 +++++++++++---
 block/nbd.c                                |   4 +-
 block/null.c                               |   6 +-
 block/parallels.c                          |   6 +-
 block/qcow.c                               |   2 +-
 block/qcow2.c                              |   6 +-
 block/qed.c                                |   6 +-
 block/quorum.c                             |   4 +-
 block/raw-format.c                         |   4 +-
 block/rbd.c                                |   6 +-
 block/snapshot-access.c                    |   4 +-
 block/vdi.c                                |   4 +-
 block/vmdk.c                               |   2 +-
 block/vpc.c                                |   2 +-
 block/vvfat.c                              |   6 +-
 tests/unit/test-block-iothread.c           |   2 +-
 tests/qemu-iotests/194                     |  15 +-
 tests/qemu-iotests/194.out                 |   4 +-
 tests/qemu-iotests/tests/mirror-sparse     | 100 ++++++++++++++
 tests/qemu-iotests/tests/mirror-sparse.out | 153 +++++++++++++++++++++
 30 files changed, 547 insertions(+), 113 deletions(-)
 create mode 100755 tests/qemu-iotests/tests/mirror-sparse
 create mode 100644 tests/qemu-iotests/tests/mirror-sparse.out

-- 
2.49.0



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

end of thread, other threads:[~2025-04-22  9:09 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-04-11  1:04 [PATCH 0/6] Make blockdev-mirror dest sparse in more cases Eric Blake
2025-04-11  1:04 ` [PATCH 1/6] mirror: Skip pre-zeroing destination if it is already zero Eric Blake
2025-04-11 19:54   ` Vladimir Sementsov-Ogievskiy
2025-04-16 21:42     ` Eric Blake
2025-04-14 16:29   ` Vladimir Sementsov-Ogievskiy
2025-04-11  1:04 ` [PATCH 2/6] file-posix: Allow lseek at offset 0 when !want_zero Eric Blake
2025-04-14 17:05   ` Vladimir Sementsov-Ogievskiy
2025-04-14 18:12     ` Eric Blake
2025-04-15 12:37       ` Vladimir Sementsov-Ogievskiy
2025-04-15 15:22         ` Eric Blake
2025-04-15 16:11           ` Vladimir Sementsov-Ogievskiy
2025-04-11  1:04 ` [PATCH 3/6] mirror: Skip writing zeroes when target is already zero Eric Blake
2025-04-15 15:59   ` Vladimir Sementsov-Ogievskiy
2025-04-16 21:51     ` Eric Blake
2025-04-21  6:15       ` Vladimir Sementsov-Ogievskiy
2025-04-21 14:41         ` Eric Blake
2025-04-22  9:08           ` Vladimir Sementsov-Ogievskiy
2025-04-11  1:04 ` [PATCH 4/6] block: Expand block status mode from bool to enum Eric Blake
2025-04-11  1:04 ` [PATCH 5/6] file-posix: Recognize blockdev-create file as starting all zero Eric Blake
2025-04-11  1:04 ` [PATCH 6/6] tests: Add iotest mirror-sparse for recent patches Eric Blake
2025-04-11 14:48 ` [PATCH 7/6] mirror: Allow QMP override to declare target already zero Eric Blake
2025-04-12  4:56   ` Markus Armbruster
2025-04-11 20:15 ` [PATCH 0/6] Make blockdev-mirror dest sparse in more cases Eric Blake

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).