Commit 8ac0f15f335 accidently broke the COW of non changed areas of newly allocated clusters, when the write spans multiple clusters, and needs COW both prior and after the write. This results in 'after' COW area beeing encrypted with wrong sector address, which render it corrupted.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1745922 CC: qemu-stable <qemu-sta...@nongnu.org> Best regards, Maxim Levitsky Maxim Levitsky (3): block/qcow2: refactoring of threaded encryption code block/qcow2: fix the corruption when rebasing luks encrypted files qemu-iotests: test for bz #1745922 block/qcow2-cluster.c | 26 +++++++------ block/qcow2-threads.c | 53 ++++++++++++++++++++------ tests/qemu-iotests/263 | 76 ++++++++++++++++++++++++++++++++++++++ tests/qemu-iotests/263.out | 19 ++++++++++ tests/qemu-iotests/group | 1 + 5 files changed, 153 insertions(+), 22 deletions(-) create mode 100755 tests/qemu-iotests/263 create mode 100644 tests/qemu-iotests/263.out -- 2.17.2