[xorg-x11-drv-vmware] vmware-12.0.1-vgahw.patch: Fix a different crash at start (#782995)

Adam Jackson ajax at fedoraproject.org
Mon Mar 19 17:33:17 UTC 2012


commit dfc89cb1c51d23e0cff2fb08c5d34d90a83ff84b
Author: Adam Jackson <ajax at redhat.com>
Date:   Mon Mar 19 13:33:14 2012 -0400

    vmware-12.0.1-vgahw.patch: Fix a different crash at start (#782995)
    
    - vmware-12.0.1-git.patch: Backport a garbage-free fix from git.

 vmware-12.0.1-git.patch   |   31 +++++++++++++++++++++++++++++++
 vmware-12.0.1-vgahw.patch |   13 +++++++++++++
 xorg-x11-drv-vmware.spec  |    8 ++++++++
 3 files changed, 52 insertions(+), 0 deletions(-)
---
diff --git a/vmware-12.0.1-git.patch b/vmware-12.0.1-git.patch
new file mode 100644
index 0000000..fe333e8
--- /dev/null
+++ b/vmware-12.0.1-git.patch
@@ -0,0 +1,31 @@
+From b70116b907aa8545f0275589a52275235083bb40 Mon Sep 17 00:00:00 2001
+From: Zack Rusin <zackr at vmware.com>
+Date: Thu, 15 Mar 2012 15:37:26 +0000
+Subject: Fix a memory corruption due to a redundant free.
+
+We use the empty rect purely as a placeholder and never
+initialize it with its own memory so lets not try to free
+it.
+Spotted by Dave Airlie.
+
+Signed-off-by: Zack Rusin <zackr at vmware.com>
+Reviewed-by: Jakob Bornecrantz <jakob at vmware.com>
+---
+diff --git a/vmwgfx/vmwgfx_saa.c b/vmwgfx/vmwgfx_saa.c
+index 0a6b98f..469598a 100644
+--- a/vmwgfx/vmwgfx_saa.c
++++ b/vmwgfx/vmwgfx_saa.c
+@@ -1151,11 +1151,9 @@ vmwgfx_composite_prepare(struct saa_driver *driver, CARD8 op,
+     if (xa_composite_prepare(vsaa->xa_ctx, xa_comp))
+ 	goto out_err;
+ 
+-    REGION_UNINIT(pScreen, &empty);
+     return TRUE;
+ 
+   out_err:
+-    REGION_UNINIT(pScreen, &empty);
+     return FALSE;
+ }
+ 
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/vmware-12.0.1-vgahw.patch b/vmware-12.0.1-vgahw.patch
new file mode 100644
index 0000000..8b86659
--- /dev/null
+++ b/vmware-12.0.1-vgahw.patch
@@ -0,0 +1,13 @@
+From: Andrew Wilcox <AWilcox at Wilcox-Tech.com>
+Bugzilla: https://bugzilla.redhat.com/782995
+
+--- xf86-video-vmware-12.0.1/src/vmware.old	2012-03-08 11:13:16.000000000 -0500
++++ xf86-video-vmware-12.0.1/src/vmware.c	2012-03-16 18:20:25.406907242 -0400
+@@ -354,6 +354,7 @@ 
+      * Save the current video state.  Do it here before VMXGetVMwareSvgaId
+      * writes to any registers.
+      */
++    vgaHWSetStdFuncs(VGAHWPTR(pScrn));
+     VMWARESave(pScrn);
+ 
+     id = VMXGetVMwareSvgaId(pVMWARE);
diff --git a/xorg-x11-drv-vmware.spec b/xorg-x11-drv-vmware.spec
index dd895ee..b47ec59 100644
--- a/xorg-x11-drv-vmware.spec
+++ b/xorg-x11-drv-vmware.spec
@@ -13,6 +13,8 @@ Group:	    User Interface/X Hardware Support
 Source0:   ftp://ftp.x.org/pub/individual/driver/%{tarball}-%{version}.tar.bz2
 
 Patch2:	    vmware-11.0.3-vgahw.patch
+Patch3:	    vmware-12.0.1-vgahw.patch
+Patch4:	    vmware-12.0.1-git.patch
 
 ExclusiveArch: %{ix86} x86_64 ia64
 
@@ -33,6 +35,8 @@ X.Org X11 vmware video driver.
 %prep
 %setup -q -n %{tarball}-%{version}
 %patch2 -p1 -b .vgahw
+%patch3 -p1 -b .vgahw2
+%patch4 -p1 -b .git
 
 %build
 %if 0%{?gitdate}
@@ -59,6 +63,10 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man4/vmware.4*
 
 %changelog
+* Mon Mar 19 2012 Adam Jackson <ajax at redhat.com> 12.0.1-1
+- vmware-12.0.1-vgahw.patch: Fix a different crash at start (#782995)
+- vmware-12.0.1-git.patch: Backport a garbage-free fix from git.
+
 * Thu Mar 15 2012 Dave Airlie <airlied at redhat.com> 12.0.1-1
 - update to latest upstream release
 


More information about the scm-commits mailing list