rpms/xorg-x11-server/devel xorg-x11-server-1.1.0-convolution-filter-fix.patch, NONE, 1.1 xorg-x11-server-1.1.0-tfp-damage.patch, NONE, 1.1 xorg-server-1.0.99.2-spiffiffity.patch, 1.2, 1.3 xorg-x11-server.spec, 1.90, 1.91
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Tue Jun 20 01:05:27 UTC 2006
Author: krh
Update of /cvs/dist/rpms/xorg-x11-server/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv996
Modified Files:
xorg-server-1.0.99.2-spiffiffity.patch xorg-x11-server.spec
Added Files:
xorg-x11-server-1.1.0-convolution-filter-fix.patch
xorg-x11-server-1.1.0-tfp-damage.patch
Log Message:
* Mon Jun 19 2006 Kristian Høgsberg <krh at redhat.com> - 1.1.0-18
- Add xorg-x11-server-1.1.0-convolution-filter-fix.patch and
xorg-x11-server-1.1.0-tfp-damage.patch backported to make compiz go
faster and make compiz shadows work.
xorg-x11-server-1.1.0-convolution-filter-fix.patch:
fbcompose.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
--- NEW FILE xorg-x11-server-1.1.0-convolution-filter-fix.patch ---
--- a/fb/fbcompose.c
+++ b/fb/fbcompose.c
@@ -3647,8 +3647,8 @@ static void fbFetchTransformed(PicturePt
xFixed *params = pict->filter_params;
INT32 cwidth = xFixedToInt(params[0]);
INT32 cheight = xFixedToInt(params[1]);
- int xoff = params[0] >> 1;
- int yoff = params[1] >> 1;
+ int xoff = (params[0] - xFixed1) >> 1;
+ int yoff = (params[1] - xFixed1) >> 1;
params += 2;
for (i = 0; i < width; ++i) {
if (!mask || mask[i] & maskBits)
@@ -3695,6 +3695,11 @@ static void fbFetchTransformed(PicturePt
}
}
+ satot >>= 16;
+ srtot >>= 16;
+ sgtot >>= 16;
+ sbtot >>= 16;
+
if (satot < 0) satot = 0; else if (satot > 0xff) satot = 0xff;
if (srtot < 0) srtot = 0; else if (srtot > 0xff) srtot = 0xff;
if (sgtot < 0) sgtot = 0; else if (sgtot > 0xff) sgtot = 0xff;
xorg-x11-server-1.1.0-tfp-damage.patch:
glxcmds.c | 1 +
glxdrawable.h | 4 +++-
glxdri.c | 52 ++++++++++++++++++++++++++++++++++++++++------------
glxext.c | 4 ++++
4 files changed, 48 insertions(+), 13 deletions(-)
--- NEW FILE xorg-x11-server-1.1.0-tfp-damage.patch ---
? GL/glx/glxinterface.h
? doc/Xserver.1x
Index: GL/glx/glxcmds.c
===================================================================
RCS file: /cvs/xorg/xserver/xorg/GL/glx/glxcmds.c,v
retrieving revision 1.10.2.5
diff -u -p -r1.10.2.5 glxcmds.c
--- GL/glx/glxcmds.c 6 Mar 2006 00:11:40 -0000 1.10.2.5
+++ GL/glx/glxcmds.c 6 Mar 2006 00:38:37 -0000
@@ -1245,6 +1245,7 @@ int DoCreateGLXPixmap(__GLXclientState *
pGlxPixmap->pGlxScreen = pGlxScreen;
pGlxPixmap->pScreen = pScreen;
pGlxPixmap->idExists = True;
+ pGlxPixmap->pDamage = NULL;
pGlxPixmap->refcnt = 0;
pGlxPixmap->modes = modes;
Index: GL/glx/glxdrawable.h
===================================================================
RCS file: /cvs/xorg/xserver/xorg/GL/glx/glxdrawable.h,v
retrieving revision 1.4.10.1
diff -u -p -r1.4.10.1 glxdrawable.h
--- GL/glx/glxdrawable.h 24 Feb 2006 05:49:33 -0000 1.4.10.1
+++ GL/glx/glxdrawable.h 6 Mar 2006 00:38:37 -0000
@@ -41,6 +41,8 @@
**
*/
+#include <damage.h>
+
typedef struct {
DrawablePtr pDraw;
@@ -49,7 +51,7 @@ typedef struct {
ScreenPtr pScreen;
Bool idExists;
int refcnt;
-
+ DamagePtr pDamage;
} __GLXpixmap;
struct __GLXdrawable {
Index: GL/glx/glxdri.c
===================================================================
RCS file: /cvs/xorg/xserver/xorg/GL/glx/Attic/glxdri.c,v
retrieving revision 1.1.2.11
diff -u -p -r1.1.2.11 glxdri.c
--- GL/glx/glxdri.c 6 Mar 2006 00:11:40 -0000 1.1.2.11
+++ GL/glx/glxdri.c 6 Mar 2006 00:38:37 -0000
@@ -334,13 +334,36 @@ __glXDRIbindTexImage(__GLXcontext *baseC
int buffer,
__GLXpixmap *glxPixmap)
{
+ RegionPtr pRegion;
PixmapPtr pixmap;
- int bpp;
- Bool npot;
+ int bpp, xoff, yoff, width, height;
+ GLenum target, format, type;
pixmap = (PixmapPtr) glxPixmap->pDraw;
- bpp = pixmap->drawable.depth >= 24 ? 4 : 2; /* XXX 24bpp packed, 8, etc */
-
+ if (!glxPixmap->pDamage) {
+ glxPixmap->pDamage = DamageCreate(NULL, NULL, DamageReportNone,
+ TRUE, glxPixmap->pScreen, NULL);
+ if (!glxPixmap->pDamage)
+ return BadAlloc;
+
+ DamageRegister ((DrawablePtr) pixmap, glxPixmap->pDamage);
+ } else {
+ pRegion = DamageRegion(glxPixmap->pDamage);
+ if (REGION_NIL(pRegion))
+ return Success;
+ }
+
+ /* XXX 24bpp packed, 8, etc */
+ if (pixmap->drawable.depth >= 24) {
+ bpp = 4;
+ format = GL_BGRA;
+ type = GL_UNSIGNED_BYTE;
+ } else {
+ bpp = 2;
+ format = GL_RGB;
+ type = GL_UNSIGNED_SHORT_5_6_5;
+ }
+
CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_ROW_LENGTH,
pixmap->devKind / bpp) );
CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SKIP_ROWS,
@@ -351,22 +374,27 @@ __glXDRIbindTexImage(__GLXcontext *baseC
if (pixmap->drawable.depth == 24)
glxFillAlphaChannel(pixmap);
- npot = !(glxCountBits(pixmap->drawable.width) == 1 &&
- glxCountBits(pixmap->drawable.height) == 1) /* ||
- strstr(CALL_GetString(GL_EXTENSIONS,
- "GL_ARB_texture_non_power_of_two")) */ ;
-
+ if (!(glxCountBits(pixmap->drawable.width) == 1 &&
+ glxCountBits(pixmap->drawable.height) == 1)
+ /* || strstr(CALL_GetString(GL_EXTENSIONS,
+ "GL_ARB_texture_non_power_of_two")) */)
+ target = GL_TEXTURE_RECTANGLE_ARB;
+ else
+ target = GL_TEXTURE_2D;
+
CALL_TexImage2D( GET_DISPATCH(),
- ( npot ? GL_TEXTURE_RECTANGLE_ARB : GL_TEXTURE_2D,
+ ( target,
0,
bpp == 4 ? 4 : 3,
pixmap->drawable.width,
pixmap->drawable.height,
0,
- bpp == 4 ? GL_BGRA : GL_RGB,
- bpp == 4 ? GL_UNSIGNED_BYTE : GL_UNSIGNED_SHORT_5_6_5,
+ format,
+ type,
pixmap->devPrivate.ptr ) );
+ DamageEmpty(glxPixmap->pDamage);
+
return Success;
}
Index: GL/glx/glxext.c
===================================================================
RCS file: /cvs/xorg/xserver/xorg/GL/glx/glxext.c,v
retrieving revision 1.6.10.3
diff -u -p -r1.6.10.3 glxext.c
--- GL/glx/glxext.c 6 Mar 2006 00:11:40 -0000 1.6.10.3
+++ GL/glx/glxext.c 6 Mar 2006 00:38:37 -0000
@@ -140,6 +140,10 @@ static int PixmapGone(__GLXpixmap *pGlxP
pGlxPixmap->idExists = False;
if (!pGlxPixmap->refcnt) {
+ if (pGlxPixmap->pDamage) {
+ DamageUnregister (pGlxPixmap->pDraw, pGlxPixmap->pDamage);
+ DamageDestroy(pGlxPixmap->pDamage);
+ }
/*
** The DestroyPixmap routine should decrement the refcount and free
** only if it's zero.
xorg-server-1.0.99.2-spiffiffity.patch:
compalloc.c | 2 ++
compwindow.c | 8 ++++++--
2 files changed, 8 insertions(+), 2 deletions(-)
Index: xorg-server-1.0.99.2-spiffiffity.patch
===================================================================
RCS file: /cvs/dist/rpms/xorg-x11-server/devel/xorg-server-1.0.99.2-spiffiffity.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- xorg-server-1.0.99.2-spiffiffity.patch 14 Apr 2006 03:21:31 -0000 1.2
+++ xorg-server-1.0.99.2-spiffiffity.patch 20 Jun 2006 01:05:12 -0000 1.3
@@ -1,3 +1,10 @@
+This patch does two things: the first chunk against compalloc.c
+disables backfilling of windows created with bg=none, which otherwise
+would force a framebuffer readback. The second chunk of the patch
+against compwindow.c disables damage notifications on move for
+manually redirected windows. The automatic compositor needs damage
+notification on move, but a compositing manager doesn't.
+
--- ./composite/compalloc.c.spiffiffity 2006-03-13 16:59:55.000000000 -0500
+++ ./composite/compalloc.c 2006-04-12 16:37:50.000000000 -0400
@@ -478,6 +478,7 @@
Index: xorg-x11-server.spec
===================================================================
RCS file: /cvs/dist/rpms/xorg-x11-server/devel/xorg-x11-server.spec,v
retrieving revision 1.90
retrieving revision 1.91
diff -u -r1.90 -r1.91
--- xorg-x11-server.spec 20 Jun 2006 00:07:34 -0000 1.90
+++ xorg-x11-server.spec 20 Jun 2006 01:05:12 -0000 1.91
@@ -4,7 +4,7 @@
Summary: X.Org X11 X server
Name: xorg-x11-server
Version: 1.1.0
-Release: 17
+Release: 18
URL: http://www.x.org
License: MIT/X11
Group: User Interface/X
@@ -22,10 +22,11 @@
Patch6: xserver-1.0.1-randr-sdk.patch
Patch7: xorg-x11-server-1.1.0-ppc64-build-fix.patch
-
-# Spiffiffity feature/optimization patches.
+# Spiffiffity/compiz feature/optimization patches.
Patch100: xorg-server-1.0.99.2-spiffiffity.patch
Patch101: xorg-x11-server-1.1.0-gl-include-inferiors.patch
+Patch102: xorg-x11-server-1.1.0-convolution-filter-fix.patch
+Patch103: xorg-x11-server-1.1.0-tfp-damage.patch
# Red Hat specific tweaking, not intended for upstream
# XXX move these to the end of the list
@@ -294,6 +295,8 @@
%patch100 -p0 -b .spiffiffity
%patch101 -p0 -b .gl-include-inferiors
+%patch102 -p1 -b .convolution-filter-fix
+%patch103 -p0 -b .tfp-damage
%patch1000 -p0 -b .redhat-die-ugly-pattern-die-die-die
%patch1001 -p1 -b .Red-Hat-extramodes
@@ -605,6 +608,11 @@
# -------------------------------------------------------------------
%changelog
+* Mon Jun 19 2006 Kristian Høgsberg <krh at redhat.com> - 1.1.0-18
+- Add xorg-x11-server-1.1.0-convolution-filter-fix.patch and
+ xorg-x11-server-1.1.0-tfp-damage.patch backported to make compiz go
+ faster and make compiz shadows work.
+
* Mon Jun 19 2006 Adam Jackson <ajackson at redhat.com> 1.1.0-17
- Disable filling in monitor gamma info from EDID momentarily, since drivers
will use that field to set the card's gamma ramp.
More information about the fedora-cvs-commits
mailing list