[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
rpms/xorg-x11-drv-i810/devel intel-2.1.1-fix-xv-compiz.patch, 1.1, 1.2 xorg-x11-drv-i810.spec, 1.66, 1.67
- From: Dave Airlie (airlied) <fedora-extras-commits redhat com>
- To: fedora-extras-commits redhat com
- Subject: rpms/xorg-x11-drv-i810/devel intel-2.1.1-fix-xv-compiz.patch, 1.1, 1.2 xorg-x11-drv-i810.spec, 1.66, 1.67
- Date: Tue, 16 Oct 2007 20:42:25 -0400
Author: airlied
Update of /cvs/pkgs/rpms/xorg-x11-drv-i810/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv3830
Modified Files:
intel-2.1.1-fix-xv-compiz.patch xorg-x11-drv-i810.spec
Log Message:
* Wed Oct 17 2007 Dave Airlie <airlied redhat com> 2.1.1-7
- intel-2.1.1-fix-xv-compiz.patch - update to not crash is we can't get RAM
intel-2.1.1-fix-xv-compiz.patch:
Index: intel-2.1.1-fix-xv-compiz.patch
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-i810/devel/intel-2.1.1-fix-xv-compiz.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- intel-2.1.1-fix-xv-compiz.patch 17 Oct 2007 00:04:45 -0000 1.1
+++ intel-2.1.1-fix-xv-compiz.patch 17 Oct 2007 00:42:22 -0000 1.2
@@ -1,9 +1,9 @@
This is a pretty dirty hack which wastes RAM to allow textured xv adaptors to run inside compiz with XAA enabled.. my cpu doesn't have the power to hit this fullscreen and lots of memcpy ensues due to lack of zero copy tfp with XAA. but what the hey...
-diff -ur xf86-video-intel-2.1.1.orig/src/i830.h xf86-video-intel-2.1.1/src/i830.h
---- xf86-video-intel-2.1.1.orig/src/i830.h 2007-08-14 15:58:29.000000000 +1100
-+++ xf86-video-intel-2.1.1/src/i830.h 2007-10-17 10:40:04.000000000 +1100
-@@ -294,6 +294,7 @@
+diff -up xf86-video-intel-2.1.1/src/i830.h.xv-compiz xf86-video-intel-2.1.1/src/i830.h
+--- xf86-video-intel-2.1.1/src/i830.h.xv-compiz 2007-08-14 14:58:29.000000000 +1000
++++ xf86-video-intel-2.1.1/src/i830.h 2007-10-17 09:59:06.000000000 +1000
+@@ -294,6 +294,7 @@ typedef struct _I830Rec {
/* separate small buffers for kernels that support this */
i830_memory *cursor_mem_classic[2];
i830_memory *cursor_mem_argb[2];
@@ -11,7 +11,7 @@
i830_memory *xaa_scratch;
i830_memory *xaa_scratch_2;
#ifdef I830_USE_EXA
-@@ -303,6 +304,8 @@
+@@ -303,6 +304,8 @@ typedef struct _I830Rec {
/* Regions allocated either from the above pools, or from agpgart. */
I830RingBuffer *LpRing;
@@ -20,42 +20,18 @@
#ifdef I830_XV
/* For Xvideo */
i830_memory *overlay_regs;
-diff -ur xf86-video-intel-2.1.1.orig/src/i830_memory.c xf86-video-intel-2.1.1/src/i830_memory.c
---- xf86-video-intel-2.1.1.orig/src/i830_memory.c 2007-08-14 15:58:29.000000000 +1100
-+++ xf86-video-intel-2.1.1/src/i830_memory.c 2007-10-17 09:45:59.000000000 +1100
-@@ -225,6 +225,7 @@
- }
- pI830->front_buffer = NULL;
- pI830->front_buffer_2 = NULL;
-+ pI830->xaaxv_scratch = NULL;
- pI830->xaa_scratch = NULL;
- pI830->xaa_scratch_2 = NULL;
- pI830->exa_offscreen = NULL;
-@@ -1129,6 +1130,15 @@
- #endif /* I830_USE_EXA */
-
- if (!pI830->noAccel && !pI830->useEXA) {
-+
-+ pI830->xaaxv_scratch =
-+ i830_allocate_memory(pScrn, "XAA Textured video scratch", (1920 * 1088 * 2),
-+ GTT_PAGE_SIZE, 0);
-+ if (pI830->xaaxv_scratch == NULL) {
-+ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
-+ "Failed to allocate XAA XV scratch pixmap space\n");
-+ }
-+
- pI830->xaa_scratch =
- i830_allocate_memory(pScrn, "xaa scratch", MAX_SCRATCH_BUFFER_SIZE,
- GTT_PAGE_SIZE, 0);
-diff -ur xf86-video-intel-2.1.1.orig/src/i830_video.c xf86-video-intel-2.1.1/src/i830_video.c
---- xf86-video-intel-2.1.1.orig/src/i830_video.c 2007-10-17 10:48:57.000000000 +1100
-+++ xf86-video-intel-2.1.1/src/i830_video.c 2007-10-17 10:50:04.000000000 +1100
-@@ -1002,8 +1002,14 @@
+diff -up xf86-video-intel-2.1.1/src/i830_video.c.xv-compiz xf86-video-intel-2.1.1/src/i830_video.c
+--- xf86-video-intel-2.1.1/src/i830_video.c.xv-compiz 2007-10-17 09:59:06.000000000 +1000
++++ xf86-video-intel-2.1.1/src/i830_video.c 2007-10-17 10:15:33.000000000 +1000
+@@ -1002,8 +1002,17 @@ I830StopVideo(ScrnInfoPtr pScrn, pointer
I830PortPrivPtr pPriv = (I830PortPrivPtr) data;
I830Ptr pI830 = I830PTR(pScrn);
- if (pPriv->textured)
+ if (pPriv->textured) {
++ if (!pI830->xaaxv_scratch)
++ return;
++
+ if (pI830->xaaxv_pixmap) {
+ (*pScrn->pScreen->ModifyPixmapHeader)(pI830->xaaxv_pixmap, 0, 0, 0, 0, 0, pI830->xaaxv_orig_pixmap_ptr);
+ pI830->xaaxv_pixmap = NULL;
@@ -66,10 +42,13 @@
OVERLAY_DEBUG("I830StopVideo\n");
-@@ -2489,10 +2495,13 @@
+@@ -2489,10 +2498,16 @@ I830PutImage(ScrnInfoPtr pScrn,
if (((char *)pPixmap->devPrivate.ptr < (char *)pI830->FbBase) ||
((char *)pPixmap->devPrivate.ptr >= (char *)pI830->FbBase +
pI830->FbMapSize)) {
++ if (!pI830->xaaxv_scratch)
++ return BadAlloc;
++
+ pI830->xaaxv_orig_pixmap_ptr = pPixmap->devPrivate.ptr;
+ pI830->xaaxv_pixmap = pPixmap;
+ if (!(*pScreen->ModifyPixmapHeader)(pPixmap, 0, 0, 0, 0, 0, pI830->FbBase + pI830->xaaxv_scratch->offset))
@@ -81,3 +60,30 @@
}
if (!pPriv->textured) {
+diff -up xf86-video-intel-2.1.1/src/i830_memory.c.xv-compiz xf86-video-intel-2.1.1/src/i830_memory.c
+--- xf86-video-intel-2.1.1/src/i830_memory.c.xv-compiz 2007-08-14 14:58:29.000000000 +1000
++++ xf86-video-intel-2.1.1/src/i830_memory.c 2007-10-17 09:59:06.000000000 +1000
+@@ -225,6 +225,7 @@ i830_reset_allocations(ScrnInfoPtr pScrn
+ }
+ pI830->front_buffer = NULL;
+ pI830->front_buffer_2 = NULL;
++ pI830->xaaxv_scratch = NULL;
+ pI830->xaa_scratch = NULL;
+ pI830->xaa_scratch_2 = NULL;
+ pI830->exa_offscreen = NULL;
+@@ -1129,6 +1130,15 @@ i830_allocate_2d_memory(ScrnInfoPtr pScr
+ #endif /* I830_USE_EXA */
+
+ if (!pI830->noAccel && !pI830->useEXA) {
++
++ pI830->xaaxv_scratch =
++ i830_allocate_memory(pScrn, "XAA Textured video scratch", (1920 * 1088 * 2),
++ GTT_PAGE_SIZE, 0);
++ if (pI830->xaaxv_scratch == NULL) {
++ xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
++ "Failed to allocate XAA XV scratch pixmap space\n");
++ }
++
+ pI830->xaa_scratch =
+ i830_allocate_memory(pScrn, "xaa scratch", MAX_SCRATCH_BUFFER_SIZE,
+ GTT_PAGE_SIZE, 0);
Index: xorg-x11-drv-i810.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-i810/devel/xorg-x11-drv-i810.spec,v
retrieving revision 1.66
retrieving revision 1.67
diff -u -r1.66 -r1.67
--- xorg-x11-drv-i810.spec 17 Oct 2007 00:04:45 -0000 1.66
+++ xorg-x11-drv-i810.spec 17 Oct 2007 00:42:22 -0000 1.67
@@ -7,7 +7,7 @@
Summary: Xorg X11 i810 video driver(s)
Name: xorg-x11-drv-i810
Version: 2.1.1
-Release: 6%{?dist}
+Release: 7%{?dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X Hardware Support
@@ -113,6 +113,9 @@
%{_libdir}/libI810XvMC.so
%changelog
+* Wed Oct 17 2007 Dave Airlie <airlied redhat com> 2.1.1-7
+- intel-2.1.1-fix-xv-compiz.patch - update to not crash is we can't get RAM
+
* Wed Oct 17 2007 Dave Airlie <airlied redhat com> 2.1.1-6
- intel-2.1.1-fix-xv-compiz.patch - Real dirty hack to allocate 4MB of RAM
for textured Xv to use as an offscreen pixmap so xv actually works under
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]