[qemu] Fixes for iscsi dep Fix TCG ld/st optimization (lp 1127369) Fix possible crash with VNC and qxl (bz

Cole Robinson crobinso at fedoraproject.org
Tue Apr 2 00:47:14 UTC 2013


commit d1a627e27fe38c5d7e1650b6d396b1b04021b33c
Author: Cole Robinson <crobinso at redhat.com>
Date:   Mon Apr 1 20:47:11 2013 -0400

    Fixes for iscsi dep
    Fix TCG ld/st optimization (lp 1127369)
    Fix possible crash with VNC and qxl (bz #919777)
    Fix kvm module permissions after first install (bz #907215)
    Switch to seavgabios by default

 ...asional-TCG-broken-problem-when-ldst-opti.patch |   15 -------
 ...asional-TCG-broken-problem-when-ldst-opti.patch |   41 +++++++++++++++++++
 0110-qxl-better-vga-init-in-enter_vga_mode.patch   |   28 +++++++++++++
 qemu.spec                                          |   43 +++++++++++--------
 4 files changed, 94 insertions(+), 33 deletions(-)
---
diff --git a/0109-tcg-Fix-occasional-TCG-broken-problem-when-ldst-opti.patch b/0109-tcg-Fix-occasional-TCG-broken-problem-when-ldst-opti.patch
new file mode 100644
index 0000000..703e972
--- /dev/null
+++ b/0109-tcg-Fix-occasional-TCG-broken-problem-when-ldst-opti.patch
@@ -0,0 +1,41 @@
+From bf18257d85734fc6b116108e7c6511dbd4ad8be8 Mon Sep 17 00:00:00 2001
+From: Yeongkyoon Lee <yeongkyoon.lee at samsung.com>
+Date: Fri, 22 Mar 2013 21:50:17 +0900
+Subject: [PATCH] tcg: Fix occasional TCG broken problem when ldst optimization
+ enabled
+
+is_tcg_gen_code() checks the upper limit of TCG generated code range wrong, so
+that TCG could get broken occasionally only when CONFIG_QEMU_LDST_OPTIMIZATION
+enabled. The reason is code_gen_buffer_max_size does not cover the upper range
+up to (TCG_MAX_OP_SIZE * OPC_BUF_SIZE), thus code_gen_buffer_max_size should be
+modified to code_gen_buffer_size.
+
+CC: qemu-stable at nongnu.org
+Signed-off-by: Yeongkyoon Lee <yeongkyoon.lee at samsung.com>
+Reviewed-by: Peter Maydell <peter.maydell at linaro.org>
+Signed-off-by: Aurelien Jarno <aurelien at aurel32.net>
+(cherry picked from commit 52ae646d4a3ebdcdcc973492c6a56f2c49b6578f)
+
+Conflicts:
+	translate-all.c
+---
+ translate-all.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/translate-all.c b/translate-all.c
+index d367fc4..bf1db09 100644
+--- a/translate-all.c
++++ b/translate-all.c
+@@ -1310,10 +1310,10 @@ static void tb_link_page(TranslationBlock *tb, tb_page_addr_t phys_pc,
+ /* check whether the given addr is in TCG generated code buffer or not */
+ bool is_tcg_gen_code(uintptr_t tc_ptr)
+ {
+-    /* This can be called during code generation, code_gen_buffer_max_size
++    /* This can be called during code generation, code_gen_buffer_size
+        is used instead of code_gen_ptr for upper boundary checking */
+     return (tc_ptr >= (uintptr_t)code_gen_buffer &&
+-            tc_ptr < (uintptr_t)(code_gen_buffer + code_gen_buffer_max_size));
++            tc_ptr < (uintptr_t)(code_gen_buffer + code_gen_buffer_size));
+ }
+ #endif
+ 
diff --git a/0110-qxl-better-vga-init-in-enter_vga_mode.patch b/0110-qxl-better-vga-init-in-enter_vga_mode.patch
new file mode 100644
index 0000000..7d35861
--- /dev/null
+++ b/0110-qxl-better-vga-init-in-enter_vga_mode.patch
@@ -0,0 +1,28 @@
+From 73a438802ea86374404df8de9f690589efea3727 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel at redhat.com>
+Date: Thu, 28 Feb 2013 11:08:50 +0100
+Subject: [PATCH] qxl: better vga init in enter_vga_mode
+
+Ask the vga core to update the display.  Will trigger dpy_gfx_resize
+if needed.  More complete than just calling dpy_gfx_resize.
+
+Signed-off-by: Gerd Hoffmann <kraxel at redhat.com>
+(cherry picked from commit c099e7aa0295678859d58e9e60b7619f6ae3bac8)
+---
+ hw/qxl.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/hw/qxl.c b/hw/qxl.c
+index 436e375..80bd92a 100644
+--- a/hw/qxl.c
++++ b/hw/qxl.c
+@@ -1073,8 +1073,8 @@ static void qxl_enter_vga_mode(PCIQXLDevice *d)
+     trace_qxl_enter_vga_mode(d->id);
+     qemu_spice_create_host_primary(&d->ssd);
+     d->mode = QXL_MODE_VGA;
+-    dpy_gfx_resize(d->ssd.ds);
+     vga_dirty_log_start(&d->vga);
++    vga_hw_update();
+ }
+ 
+ static void qxl_exit_vga_mode(PCIQXLDevice *d)
diff --git a/qemu.spec b/qemu.spec
index 652d0e6..ed7e3a2 100644
--- a/qemu.spec
+++ b/qemu.spec
@@ -128,7 +128,7 @@
 Summary: QEMU is a FAST! processor emulator
 Name: qemu
 Version: 1.4.0
-Release: 6%{?dist}
+Release: 7%{?dist}
 # Epoch because we pushed a qemu-1.0 package. AIUI this can't ever be dropped
 Epoch: 2
 License: GPLv2+ and LGPLv2+ and BSD
@@ -195,12 +195,12 @@ Patch0105: 0105-qxl-Add-rom_size-compat-property-fix-migration-from-.patch
 Patch0106: 0106-docs-Fix-generating-qemu-doc.html-with-texinfo-5.patch
 # Fix test ordering with latest glib
 Patch0107: 0107-rtc-test-Fix-test-failures-with-recent-glib.patch
-# Adapt to libiscsi packaging in Fedora (included upstream)
+# Fixes for iscsi dep
 Patch0108: 0108-iscsi-look-for-pkg-config-file-too.patch
-# Fix TCG ld/st optimization.
-# https://bugs.launchpad.net/bugs/1127369
-# Upstream commit 52ae646d4a3ebdcdcc973492c6a56f2c49b6578f.
-Patch0109: 0001-tcg-Fix-occasional-TCG-broken-problem-when-ldst-opti.patch
+# Fix TCG ld/st optimization (lp 1127369)
+Patch0109: 0109-tcg-Fix-occasional-TCG-broken-problem-when-ldst-opti.patch
+# Fix possible crash with VNC and qxl (bz #919777)
+Patch0110: 0110-qxl-better-vga-init-in-enter_vga_mode.patch
 
 BuildRequires: SDL-devel
 BuildRequires: zlib-devel
@@ -419,7 +419,7 @@ Group: Development/Tools
 Requires: %{name}-common = %{epoch}:%{version}-%{release}
 Provides: kvm = 85
 Obsoletes: kvm < 85
-Requires: vgabios >= 0.6c-2
+Requires: seavgabios
 Requires: seabios-bin >= 0.6.0-2
 Requires: sgabios-bin
 Requires: ipxe-roms-qemu
@@ -670,12 +670,12 @@ CAC emulation development files.
 %patch0106 -p1
 # Fix test ordering with latest glib
 %patch0107 -p1
-# Adapt to libiscsi packaging in Fedora (included upstream)
+# Fixes for iscsi dep
 %patch0108 -p1
-# Fix TCG ld/st optimization.
-# https://bugs.launchpad.net/bugs/1127369
-# Upstream commit 52ae646d4a3ebdcdcc973492c6a56f2c49b6578f.
+# Fix TCG ld/st optimization (lp 1127369)
 %patch0109 -p1
+# Fix possible crash with VNC and qxl (bz #919777)
+%patch0110 -p1
 
 
 %build
@@ -822,7 +822,7 @@ rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/s390-zipl.rom
 
 # Provided by package ipxe
 rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/pxe*rom
-# Provided by package vgabios
+# Provided by package seavgabios
 rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/vgabios*bin
 # Provided by package seabios
 rm -rf ${RPM_BUILD_ROOT}%{_datadir}/%{name}/bios.bin
@@ -847,11 +847,11 @@ rom_link() {
     ln -s $1 %{buildroot}%{_datadir}/%{name}/$2
 }
 
-rom_link ../vgabios/VGABIOS-lgpl-latest.bin vgabios.bin
-rom_link ../vgabios/VGABIOS-lgpl-latest.cirrus.bin vgabios-cirrus.bin
-rom_link ../vgabios/VGABIOS-lgpl-latest.qxl.bin vgabios-qxl.bin
-rom_link ../vgabios/VGABIOS-lgpl-latest.stdvga.bin vgabios-stdvga.bin
-rom_link ../vgabios/VGABIOS-lgpl-latest.vmware.bin vgabios-vmware.bin
+rom_link ../seavgabios/vgabios-isavga.bin vgabios.bin
+rom_link ../seavgabios/vgabios-cirrus.bin vgabios-cirrus.bin
+rom_link ../seavgabios/vgabios-qxl.bin vgabios-qxl.bin
+rom_link ../seavgabios/vgabios-stdvga.bin vgabios-stdvga.bin
+rom_link ../seavgabios/vgabios-vmware.bin vgabios-vmware.bin
 rom_link ../seabios/bios.bin bios.bin
 rom_link ../sgabios/sgabios.bin sgabios.bin
 %endif
@@ -945,7 +945,7 @@ make check
 # load kvm modules now, so we can make sure no reboot is needed.
 # If there's already a kvm module installed, we don't mess with it
 sh %{_sysconfdir}/sysconfig/modules/kvm.modules || :
-udevadm trigger --sysname-match=kvm || :
+udevadm trigger --subsystem-match=misc --sysname-match=kvm --action=add || :
 %endif
 
 %if %{without separate_kvm}
@@ -1285,6 +1285,13 @@ getent passwd qemu >/dev/null || \
 %endif
 
 %changelog
+* Mon Apr 01 2013 Cole Robinson <crobinso at redhat.com> - 2:1.4.0-7
+- Fixes for iscsi dep
+- Fix TCG ld/st optimization (lp 1127369)
+- Fix possible crash with VNC and qxl (bz #919777)
+- Fix kvm module permissions after first install (bz #907215)
+- Switch to seavgabios by default
+
 * Sun Mar 31 2013 Richard W.M. Jones <rjones at redhat.com> - 2:1.4.0-6
 - Fix TCG ld/st optimization. https://bugs.launchpad.net/bugs/1127369
 


More information about the scm-commits mailing list