* Mon Oct 20 2008 Adam Jackson <ajax@redhat.com> 1.5.2-8

- xserver-1.5.2-exa-sync-less.patch: Avoid migrating pixmaps out on
  PutImage.
This commit is contained in:
Adam Jackson 2008-10-20 14:37:17 +00:00
parent 613014373f
commit 6baf601042
2 changed files with 50 additions and 1 deletions

View File

@ -19,7 +19,7 @@
Summary: X.Org X11 X server Summary: X.Org X11 X server
Name: xorg-x11-server Name: xorg-x11-server
Version: 1.5.2 Version: 1.5.2
Release: 7%{?dist} Release: 8%{?dist}
URL: http://www.x.org URL: http://www.x.org
License: MIT License: MIT
Group: User Interface/X Group: User Interface/X
@ -92,6 +92,9 @@ Patch6008: xserver-1.5.2-enable-RAW-console.patch
Patch6009: xserver-1.5.2-disable-kbd-mouse.patch Patch6009: xserver-1.5.2-disable-kbd-mouse.patch
Patch6010: xserver-1.5.2-no-duplicate-devices.patch Patch6010: xserver-1.5.2-no-duplicate-devices.patch
# exa performance fix
Patch6011: xserver-1.5.2-exa-sync-less.patch
%define moduledir %{_libdir}/xorg/modules %define moduledir %{_libdir}/xorg/modules
%define drimoduledir %{_libdir}/dri %define drimoduledir %{_libdir}/dri
%define sdkdir %{_includedir}/xorg %define sdkdir %{_includedir}/xorg
@ -522,6 +525,10 @@ rm -rf $RPM_BUILD_ROOT
%changelog %changelog
* Mon Oct 20 2008 Adam Jackson <ajax@redhat.com> 1.5.2-8
- xserver-1.5.2-exa-sync-less.patch: Avoid migrating pixmaps out on
PutImage.
* Mon Oct 20 2008 Peter Hutterer <peter.hutterer@redhat.com> 1.5.2-7 * Mon Oct 20 2008 Peter Hutterer <peter.hutterer@redhat.com> 1.5.2-7
- xserver-1.5.2-no-duplicate-devices.patch: don't re-add devices through HAL - xserver-1.5.2-no-duplicate-devices.patch: don't re-add devices through HAL
if they are already added (#467462). if they are already added (#467462).

View File

@ -0,0 +1,42 @@
From 2188582e5ea90edb432a2f421d0a267439ba08f9 Mon Sep 17 00:00:00 2001
From: =?utf-8?q?Michel=20D=C3=A4nzer?= <michel@tungstengraphics.com>
Date: Mon, 20 Oct 2008 09:55:24 -0400
Subject: [PATCH] EXA: Avoid excessive syncing in PutImage
---
exa/exa_migration.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/exa/exa_migration.c b/exa/exa_migration.c
index 56b6945..571650c 100644
--- a/exa/exa_migration.c
+++ b/exa/exa_migration.c
@@ -129,6 +129,7 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc,
BoxPtr pBox;
int nbox;
Bool access_prepared = FALSE;
+ Bool need_sync = FALSE;
/* Damaged bits are valid in current copy but invalid in other one */
if (exaPixmapIsOffscreen(pPixmap)) {
@@ -220,14 +221,15 @@ exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc,
exaMemcpyBox (pPixmap, pBox,
fallback_src, fallback_srcpitch,
fallback_dst, fallback_dstpitch);
- }
+ } else
+ need_sync = TRUE;
pBox++;
}
if (access_prepared)
exaFinishAccess(&pPixmap->drawable, fallback_index);
- else
+ else if (need_sync)
sync (pPixmap->drawable.pScreen);
pExaPixmap->offscreen = save_offscreen;
--
1.6.0.1