* Tue Aug 8 2006 Kristian Høgsberg <krh@redhat.com> - 1.1.1-18.fc6

- Update offscreen-pixmaps patch to migrate pixmaps when the compiz
  selection is taken.
This commit is contained in:
Kristian Høgsberg 2006-08-08 16:33:11 +00:00
parent a313dc66b3
commit 22c56dc860
2 changed files with 67 additions and 21 deletions

View File

@ -1,17 +1,60 @@
Patch to force pixmaps to be allocated in host memory. Work in
progress, will eventually allow the xserver to keep pixmaps in video
memory until the root window is redirected. At that point pixmaps are
evicted to host memory and subsequent pixmap allocations are done in
host memory.
--- ./hw/xfree86/xaa/xaaInit.c.offscreen-pixmaps 2006-07-05 14:31:42.000000000 -0400
+++ ./hw/xfree86/xaa/xaaInit.c 2006-08-07 18:44:21.000000000 -0400
@@ -98,6 +98,34 @@
xfree(infoRec);
}
+static void
+SelectionChangedCallback (CallbackListPtr *list,
+ pointer xaaData, pointer callData)
+{
+ static Atom atom = BAD_RESOURCE;
+ static char atom_name[] = "_COMPIZ_GL_INCLUDE_INFERIORS";
+
+ SelectionInfoPtr info = call_data;
+ XAAInfoRecPtr infoRec = xaa_data;
+
+ if (atom == BAD_RESOURCE)
+ {
+ atom = MakeAtom(atom_name, strlen(atom_name), True);
+ if (atom == BAD_RESOURCE)
+ return;
+ }
+
+ if (info->selection->selection == atom &&
+ info->kind == SelectionSetOwner &&
+ info->selection->window != None)
+ {
+ infoRec->offscreenDepths = 0;
+ infoRec->Flags &= ~OFFSCREEN_PIXMAPS;
+
+ XAAMoveOutOffscreenPixmaps(pScreen);
+ XAAInvalidatePixmapCache(pScreen);
+ }
+}
Bool
XAAInit(ScreenPtr pScreen, XAAInfoRecPtr infoRec)
@@ -228,11 +256,11 @@
if(infoRec->Flags & MICROSOFT_ZERO_LINE_BIAS)
miSetZeroLineBias(pScreen, OCTANT1 | OCTANT2 | OCTANT3 | OCTANT4);
+ AddCallback(&SelectionCallback, SelectionChangedCallback, infoRec);
+
return TRUE;
}
-
-
static Bool
XAACloseScreen (int i, ScreenPtr pScreen)
{
@@ -264,6 +292,8 @@
xfree ((pointer) pScreenPriv);
+ DeleteCallback(&SelectionCallback, SelectionChangedCallback, infoRec);
+
return (*pScreen->CloseScreen) (i, pScreen);
}
--- ./hw/xfree86/xaa/xaaInitAccel.c.no-offscreen-pixmaps 2006-08-07 14:21:11.000000000 -0400
+++ ./hw/xfree86/xaa/xaaInitAccel.c 2006-08-07 14:20:44.000000000 -0400
@@ -92,7 +92,7 @@
{XAAOPT_PIXMAP_CACHE, "XaaNoPixmapCache",
OPTV_BOOLEAN, {0}, FALSE },
{XAAOPT_OFFSCREEN_PIXMAPS, "XaaNoOffscreenPixmaps",
- OPTV_BOOLEAN, {0}, FALSE },
+ OPTV_BOOLEAN, {0}, TRUE },
{ -1, NULL,
OPTV_NONE, {0}, FALSE }
};

View File

@ -7,8 +7,8 @@ Version: 1.1.1
# For rawhide builds, bump the number /before/ the dist tag. For package
# upgrades to officially released distribution releases, if the package
# Version field above is not changing, append and/or bump a digit /after/
# the dist tag. ie: 25%{dist}.0 -> 25%{dist}.1 ...
Release: 17.fc5.aiglx
# the dist tag. ie: 25%{?dist}.0 -> 25%{?dist}.1 ...
Release: 18%{?dist}
URL: http://www.x.org
License: MIT/X11
Group: User Interface/X
@ -32,7 +32,6 @@ Patch103: xorg-x11-server-1.1.0-tfp-damage.patch
Patch104: xorg-x11-server-1.1.0-mesa-copy-sub-buffer.patch
Patch105: xorg-x11-server-1.1.1-enable-composite.patch
Patch106: xorg-x11-server-1.1.1-no-composite-in-xnest.patch
# Work-in-progress; for now just defaults XaaNoOffscreenPixmaps to false.
Patch107: xorg-x11-server-1.1.1-offscreen-pixmaps.patch
# Red Hat specific tweaking, not intended for upstream
@ -331,7 +330,7 @@ drivers, input drivers, or other X modules should install this package.
%patch104 -p0 -b .mesa-copy-sub-buffer
%patch105 -p0 -b .enable-composite
%patch106 -p1 -b .no-xnest-composite
%patch107 -p0 -b .offscreen-pixmaps
%patch107 -p1 -b .offscreen-pixmaps
%patch1000 -p0 -b .redhat-die-ugly-pattern-die-die-die
%patch1001 -p1 -b .Red-Hat-extramodes
@ -681,6 +680,10 @@ rm -rf $RPM_BUILD_ROOT
# -------------------------------------------------------------------
%changelog
* Tue Aug 8 2006 Kristian Høgsberg <krh@redhat.com> - 1.1.1-18.fc6
- Update offscreen-pixmaps patch to migrate pixmaps when the compiz
selection is taken.
* Mon Aug 7 2006 Kristian Høgsberg <krh@redhat.com> - 1.1.1-17.fc5.aiglx
- Build for fc5 aiglx repo.