From 79ce9ccd40e6739551521c18b6d3d73d9fa750f12835a1a01307add75a826013 Mon Sep 17 00:00:00 2001 From: Alexander Graf Date: Mon, 1 Jun 2015 21:53:24 +0000 Subject: [PATCH] - Fix qemu2 cow caching (bsc#933132) OBS-URL: https://build.opensuse.org/package/show/Virtualization/qemu?expand=0&rev=263 --- 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch | 31 +++++++++++++++++++++ libcacard.changes | 7 +++++ libcacard.spec | 2 ++ qemu-linux-user.changes | 7 +++++ qemu-linux-user.spec | 2 ++ qemu-testsuite.changes | 7 +++++ qemu-testsuite.spec | 2 ++ qemu.changes | 8 ++++++ qemu.spec | 2 ++ 9 files changed, 68 insertions(+) create mode 100644 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch diff --git a/0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch b/0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch new file mode 100644 index 00000000..cb13e7b4 --- /dev/null +++ b/0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch @@ -0,0 +1,31 @@ +From 85bd20ed57493f867626fd7d5fa073b4476ae301 Mon Sep 17 00:00:00 2001 +From: Max Reitz +Date: Mon, 1 Jun 2015 18:09:17 +0200 +Subject: [PATCH] qcow2: Set MIN_L2_CACHE_SIZE to 2 + +The L2 cache must cover at least two L2 tables, because during COW two +L2 tables are accessed simultaneously. + +Reported-by: Alexander Graf +Signed-off-by: Max Reitz +Tested-by: Alexander Graf +Reviewed-by: Alberto Garcia +Signed-off-by: Alexander Graf +--- + block/qcow2.h | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/block/qcow2.h b/block/qcow2.h +index 422b825..2f20949 100644 +--- a/block/qcow2.h ++++ b/block/qcow2.h +@@ -62,7 +62,8 @@ + #define MIN_CLUSTER_BITS 9 + #define MAX_CLUSTER_BITS 21 + +-#define MIN_L2_CACHE_SIZE 1 /* cluster */ ++/* Must be at least 2 to cover COW */ ++#define MIN_L2_CACHE_SIZE 2 /* clusters */ + + /* Must be at least 4 to cover all cases of refcount table growth */ + #define MIN_REFCOUNT_CACHE_SIZE 4 /* clusters */ diff --git a/libcacard.changes b/libcacard.changes index 92932686..4826f84e 100644 --- a/libcacard.changes +++ b/libcacard.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Mon Jun 1 21:52:44 UTC 2015 - agraf@suse.com + +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.3 +* Patches added: + 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch + ------------------------------------------------------------------- Tue May 26 18:11:43 UTC 2015 - jslaby@suse.com diff --git a/libcacard.spec b/libcacard.spec index 2b1723d2..ad7e5499 100644 --- a/libcacard.spec +++ b/libcacard.spec @@ -67,6 +67,7 @@ Patch0039: 0039-s390x-Fix-stoc-direction.patch Patch0040: 0040-s390x-Add-interlocked-access-facili.patch Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch +Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch # Please do not add patches manually here, run update_git.sh. # this is to make lint happy Source300: qemu-rpmlintrc @@ -168,6 +169,7 @@ This sub-package contains development files for the Smartcard library. %patch0040 -p1 %patch0041 -p1 %patch0042 -p1 +%patch0043 -p1 %build ./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \ diff --git a/qemu-linux-user.changes b/qemu-linux-user.changes index f9481920..30260db2 100644 --- a/qemu-linux-user.changes +++ b/qemu-linux-user.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Mon Jun 1 21:52:41 UTC 2015 - agraf@suse.com + +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.3 +* Patches added: + 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch + ------------------------------------------------------------------- Tue May 26 18:11:37 UTC 2015 - jslaby@suse.com diff --git a/qemu-linux-user.spec b/qemu-linux-user.spec index 0ac5940d..4787f056 100644 --- a/qemu-linux-user.spec +++ b/qemu-linux-user.spec @@ -67,6 +67,7 @@ Patch0039: 0039-s390x-Fix-stoc-direction.patch Patch0040: 0040-s390x-Add-interlocked-access-facili.patch Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch +Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch # Please do not add patches manually here, run update_git.sh. # this is to make lint happy Source300: qemu-rpmlintrc @@ -162,6 +163,7 @@ run cross-architecture builds. %patch0040 -p1 %patch0041 -p1 %patch0042 -p1 +%patch0043 -p1 %build ./configure --prefix=%_prefix --sysconfdir=%_sysconfdir \ diff --git a/qemu-testsuite.changes b/qemu-testsuite.changes index c2cec88a..9618bba4 100644 --- a/qemu-testsuite.changes +++ b/qemu-testsuite.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Mon Jun 1 21:52:37 UTC 2015 - agraf@suse.com + +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.3 +* Patches added: + 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch + ------------------------------------------------------------------- Tue May 26 18:11:31 UTC 2015 - jslaby@suse.com diff --git a/qemu-testsuite.spec b/qemu-testsuite.spec index 280cf10c..f8c17dd2 100644 --- a/qemu-testsuite.spec +++ b/qemu-testsuite.spec @@ -98,6 +98,7 @@ Patch0039: 0039-s390x-Fix-stoc-direction.patch Patch0040: 0040-s390x-Add-interlocked-access-facili.patch Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch +Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. @@ -602,6 +603,7 @@ This package provides a service file for starting and stopping KSM. %patch0040 -p1 %patch0041 -p1 %patch0042 -p1 +%patch0043 -p1 %if %{build_x86_fw_from_source} pushd roms/seabios diff --git a/qemu.changes b/qemu.changes index c2cec88a..06f689f5 100644 --- a/qemu.changes +++ b/qemu.changes @@ -1,3 +1,11 @@ +------------------------------------------------------------------- +Mon Jun 1 21:52:37 UTC 2015 - agraf@suse.com + +- Patch queue updated from git://github.com/openSUSE/qemu.git opensuse-2.3 +- Fix qemu2 cow caching (bsc#933132) +* Patches added: + 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch + ------------------------------------------------------------------- Tue May 26 18:11:31 UTC 2015 - jslaby@suse.com diff --git a/qemu.spec b/qemu.spec index f7e83fbc..6daa1470 100644 --- a/qemu.spec +++ b/qemu.spec @@ -98,6 +98,7 @@ Patch0039: 0039-s390x-Fix-stoc-direction.patch Patch0040: 0040-s390x-Add-interlocked-access-facili.patch Patch0041: 0041-fdc-force-the-fifo-access-to-be-in-.patch Patch0042: 0042-rules.mak-Force-CFLAGS-for-all-obje.patch +Patch0043: 0043-qcow2-Set-MIN_L2_CACHE_SIZE-to-2.patch # Please do not add QEMU patches manually here. # Run update_git.sh to regenerate this queue. @@ -602,6 +603,7 @@ This package provides a service file for starting and stopping KSM. %patch0040 -p1 %patch0041 -p1 %patch0042 -p1 +%patch0043 -p1 %if %{build_x86_fw_from_source} pushd roms/seabios