This patch series adds support for zero blocks in non-active commits.
The first three patches in the series contains the actual changes to the
commit code, the last patch adds a test for the new functionality.
---
Changes since v2:
- moved main loop of commit_run to a separate function and refactored
the error handling.
- call blk_co_pwrite_zero even if the size of the zero region does not
align with the sectors of the base image. This removes the need for
the CommitMethod enum
Changes since v1:
- split up the implementation in three separate commits
- removed accidentally left over includes from testing
Vincent Vanlaer (5):
block: get type of block allocation in commit_run
block: move commit_run loop to separate function
block: refactor error handling of commit_iteration
block: allow commit to unmap zero blocks
block: add test non-active commit with zeroed data
block/commit.c | 108 +++++++++++++++++++++++++------------
tests/qemu-iotests/315 | 95 ++++++++++++++++++++++++++++++++
tests/qemu-iotests/315.out | 54 +++++++++++++++++++
3 files changed, 223 insertions(+), 34 deletions(-)
create mode 100755 tests/qemu-iotests/315
create mode 100644 tests/qemu-iotests/315.out
--
2.44.1