From 3807f07c156d1d2be7cd559d847aaeb55852b5e2 Mon Sep 17 00:00:00 2001 From: Richard W.M. Jones Date: Jul 28 2021 09:38:30 +0000 Subject: Add fix for discard + copy-on-read affecting virt-v2v (RHBZ#1986509) --- diff --git a/0001-qemu-block-Use-discard-unmap-for-the-copy-on-read-bl.patch b/0001-qemu-block-Use-discard-unmap-for-the-copy-on-read-bl.patch new file mode 100755 index 0000000..8e76b94 --- /dev/null +++ b/0001-qemu-block-Use-discard-unmap-for-the-copy-on-read-bl.patch @@ -0,0 +1,39 @@ +From 9cccc94408d59ddd8f3b999bb62e133d443987f5 Mon Sep 17 00:00:00 2001 +From: Peter Krempa +Date: Tue, 27 Jul 2021 19:12:09 +0200 +Subject: [PATCH] qemu: block: Use 'discard': 'unmap' for the copy-on-read + block filter + +--- + src/qemu/qemu_block.c | 1 + + tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args | 2 +- + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/qemu/qemu_block.c b/src/qemu/qemu_block.c +index 1610f72d07..4691dff4f7 100644 +--- a/src/qemu/qemu_block.c ++++ b/src/qemu/qemu_block.c +@@ -2157,6 +2157,7 @@ qemuBlockStorageGetCopyOnReadProps(virDomainDiskDef *disk) + "s:driver", "copy-on-read", + "s:node-name", priv->nodeCopyOnRead, + "s:file", disk->src->nodeformat, ++ "s:discard", "unmap", + NULL)); + + return ret; +diff --git a/tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args b/tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args +index 93d3a06c88..690d4f3ea1 100644 +--- a/tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args ++++ b/tests/qemuxml2argvdata/disk-copy_on_read.x86_64-latest.args +@@ -30,7 +30,7 @@ XDG_CONFIG_HOME=/tmp/lib/domain--1-test/.config \ + -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x6 \ + -blockdev '{"driver":"file","filename":"/var/lib/libvirt/images/f14.img","node-name":"libvirt-2-storage","auto-read-only":true,"discard":"unmap"}' \ + -blockdev '{"node-name":"libvirt-2-format","read-only":false,"driver":"qcow2","file":"libvirt-2-storage"}' \ +--blockdev '{"driver":"copy-on-read","node-name":"libvirt-CoR-vda","file":"libvirt-2-format"}' \ ++-blockdev '{"driver":"copy-on-read","node-name":"libvirt-CoR-vda","file":"libvirt-2-format","discard":"unmap"}' \ + -device virtio-blk-pci,bus=pci.0,addr=0x4,drive=libvirt-CoR-vda,id=virtio-disk0,bootindex=2 \ + -blockdev '{"driver":"file","filename":"/var/lib/libvirt/Fedora-14-x86_64-Live-KDE.iso","node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ + -blockdev '{"node-name":"libvirt-1-format","read-only":true,"driver":"raw","file":"libvirt-1-storage"}' \ +-- +2.32.0 + diff --git a/libvirt.spec b/libvirt.spec index 9307809..be84406 100644 --- a/libvirt.spec +++ b/libvirt.spec @@ -201,7 +201,7 @@ Summary: Library providing a simple virtualization API Name: libvirt Version: 7.5.0 -Release: 2%{?dist} +Release: 3%{?dist} License: LGPLv2+ URL: https://libvirt.org/ @@ -210,6 +210,10 @@ URL: https://libvirt.org/ %endif Source: https://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.xz +# Not upstream, but already reviewed and acked for 7.6 +# https://listman.redhat.com/archives/libvir-list/2021-July/msg00823.html +Patch1: 0001-qemu-block-Use-discard-unmap-for-the-copy-on-read-bl.patch + Requires: libvirt-daemon = %{version}-%{release} Requires: libvirt-daemon-config-network = %{version}-%{release} Requires: libvirt-daemon-config-nwfilter = %{version}-%{release} @@ -1902,6 +1906,9 @@ exit 0 %changelog +* Wed Jul 28 2021 Richard W.M. Jones - 7.5.0-3 +- Add fix for discard + copy-on-read affecting virt-v2v (RHBZ#1986509) + * Thu Jul 22 2021 Fedora Release Engineering - 7.5.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild