rpms/xorg-x11-server/F-12 xserver-1.6.99-exa-infinite-loop.patch, NONE, 1.1 xserver-1.6.99-rotate-wrapping-fix.patch, NONE, 1.1 xorg-x11-server.spec, 1.490, 1.491
Dave Airlie
airlied at fedoraproject.org
Thu Oct 1 05:57:10 UTC 2009
Author: airlied
Update of /cvs/pkgs/rpms/xorg-x11-server/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv6906
Modified Files:
xorg-x11-server.spec
Added Files:
xserver-1.6.99-exa-infinite-loop.patch
xserver-1.6.99-rotate-wrapping-fix.patch
Log Message:
* Thu Oct 01 2009 Dave Airlie <airlied at redhat.com> 1.6.99.903-2
- backport EXA and rotate crash fixes
xserver-1.6.99-exa-infinite-loop.patch:
exa_migration_classic.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
--- NEW FILE xserver-1.6.99-exa-infinite-loop.patch ---
>From fc599ab01ccaaff3c0bfc5a4d623efe725f175db Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <daenzer at vmware.com>
Date: Thu, 1 Oct 2009 15:15:19 +1000
Subject: [PATCH] exa: avoid infinite loops if UTS sw fallbacks.
The upload in finish access can cause an infinite loop if
UTS returns FALSE in here.
Signed-off-by: Dave Airlie <airlied at redhat.com>
---
exa/exa_migration_classic.c | 10 +++++-----
1 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/exa/exa_migration_classic.c b/exa/exa_migration_classic.c
index 4819af8..6d7b9f5 100644
--- a/exa/exa_migration_classic.c
+++ b/exa/exa_migration_classic.c
@@ -242,11 +242,6 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc,
pBox++;
}
- if (access_prepared)
- exaFinishAccess(&pPixmap->drawable, fallback_index);
- else if (need_sync && sync)
- sync (pPixmap->drawable.pScreen);
-
pExaPixmap->offscreen = save_offscreen;
pPixmap->devKind = save_pitch;
@@ -261,6 +256,11 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc,
REGION_UNION(pScreen, pValidDst, pValidDst, &CopyReg);
REGION_UNINIT(pScreen, &CopyReg);
+
+ if (access_prepared)
+ exaFinishAccess(&pPixmap->drawable, fallback_index);
+ else if (need_sync && sync)
+ sync (pPixmap->drawable.pScreen);
}
/**
--
1.6.5.rc2
xserver-1.6.99-rotate-wrapping-fix.patch:
xf86Rotate.c | 11 +++--------
1 file changed, 3 insertions(+), 8 deletions(-)
--- NEW FILE xserver-1.6.99-rotate-wrapping-fix.patch ---
>From f1893a5a434e483ab40001e5a765902f7ce5ed4e Mon Sep 17 00:00:00 2001
From: Dave Airlie <airlied at redhat.com>
Date: Thu, 1 Oct 2009 15:24:04 +1000
Subject: [PATCH] rotate: drop unwrapping inside block handler.
Keith has shown half the block handlers wrappers are wrong, also
dynamic wrapping/unwrapping from what I can see will happen after
the drivers, so its really accidental ABI, that we can't change
now without modifing drivers. So be safe for 1.7.
Signed-off-by: Dave Airlie <airlied at redhat.com>
---
hw/xfree86/modes/xf86Rotate.c | 10 +++-------
1 files changed, 3 insertions(+), 7 deletions(-)
diff --git a/hw/xfree86/modes/xf86Rotate.c b/hw/xfree86/modes/xf86Rotate.c
index 9e65c99..5de6b0c 100644
--- a/hw/xfree86/modes/xf86Rotate.c
+++ b/hw/xfree86/modes/xf86Rotate.c
@@ -268,13 +268,9 @@ xf86RotateBlockHandler(int screenNum, pointer blockData,
rotation_active = xf86RotateRedisplay(pScreen);
pScreen->BlockHandler = xf86_config->BlockHandler;
(*pScreen->BlockHandler) (screenNum, blockData, pTimeout, pReadmask);
- if (rotation_active) {
- /* Re-wrap if rotation is still happening */
- xf86_config->BlockHandler = pScreen->BlockHandler;
- pScreen->BlockHandler = xf86RotateBlockHandler;
- } else {
- xf86_config->BlockHandler = NULL;
- }
+ /* cannot avoid re-wrapping until all wrapping is audited */
+ xf86_config->BlockHandler = pScreen->BlockHandler;
+ pScreen->BlockHandler = xf86RotateBlockHandler;
}
void
--
1.6.5.rc2
Index: xorg-x11-server.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-server/F-12/xorg-x11-server.spec,v
retrieving revision 1.490
retrieving revision 1.491
diff -u -p -r1.490 -r1.491
--- xorg-x11-server.spec 28 Sep 2009 12:10:42 -0000 1.490
+++ xorg-x11-server.spec 1 Oct 2009 05:57:08 -0000 1.491
@@ -19,7 +19,7 @@
Summary: X.Org X11 X server
Name: xorg-x11-server
Version: 1.6.99.903
-Release: 1%{dist}
+Release: 2%{dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X
@@ -73,6 +73,10 @@ Patch6030: xserver-1.6.99-right-of.patch
Patch6033: xserver-1.6.99-default-modes.patch
Patch6044: xserver-1.6.99-hush-prerelease-warning.patch
+# upstream already
+Patch7000: xserver-1.6.99-rotate-wrapping-fix.patch
+Patch7001: xserver-1.6.99-exa-infinite-loop.patch
+
%define moduledir %{_libdir}/xorg/modules
%define drimoduledir %{_libdir}/dri
%define sdkdir %{_includedir}/xorg
@@ -500,6 +504,9 @@ rm -rf $RPM_BUILD_ROOT
%{xserver_source_dir}
%changelog
+* Thu Oct 01 2009 Dave Airlie <airlied at redhat.com> 1.6.99.903-2
+- backport EXA and rotate crash fixes
+
* Mon Sep 28 2009 Peter Hutterer <peter.hutterer at redhat.com> 1.6.99.903-1
- xserver 1.6.99.903
More information about the fedora-extras-commits
mailing list