Hello community,

here is the log from the commit of package xf86-video-ati for openSUSE:Factory 
checked in at 2012-06-10 20:20:32
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xf86-video-ati (Old)
 and      /work/SRC/openSUSE:Factory/.xf86-video-ati.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xf86-video-ati", Maintainer is ""

Changes:
--------
--- /work/SRC/openSUSE:Factory/xf86-video-ati/xf86-video-ati.changes    
2012-05-21 07:33:17.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.xf86-video-ati.new/xf86-video-ati.changes       
2012-06-10 21:52:45.000000000 +0200
@@ -1,0 +2,14 @@
+Fri Jun  8 14:58:57 UTC 2012 - [email protected]
+
+- U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch
+  * that one is required to fix the rendering corruption in UMS
+    introduced with the previous patch (bnc#765973) 
+
+-------------------------------------------------------------------
+Fri Jun  8 12:52:45 UTC 2012 - [email protected]
+
+- U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch 
+  * Attempt to fix solid picture acceleration with UMS. (fdo#49182,
+    bnc#765973)
+
+-------------------------------------------------------------------

New:
----
  U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch
  U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ xf86-video-ati.spec ++++++
--- /var/tmp/diff_new_pack.Q7lAwR/_old  2012-06-10 21:52:47.000000000 +0200
+++ /var/tmp/diff_new_pack.Q7lAwR/_new  2012-06-10 21:52:47.000000000 +0200
@@ -16,7 +16,6 @@
 #
 
 
-
 Name:           xf86-video-ati
 Version:        6.14.4
 Release:        0
@@ -32,6 +31,8 @@
 Patch6:         U_xf86-video-ati-6.14.4-exa-solid-accel-r100.patch
 Patch7:         U_xf86-video-ati-6.14.4-exa-solid-accel-r200.patch
 Patch8:         U_xf86-video-ati-6.14.4-exa-solid-accel-r300.patch
+Patch9:         U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch
+Patch10:        U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch
 BuildRequires:  Mesa-devel
 BuildRequires:  pkg-config
 BuildRequires:  pkgconfig(fontsproto)
@@ -71,6 +72,8 @@
 %patch6 -p1
 %patch7 -p1
 %patch8 -p1
+%patch9 -p1
+%patch10 -p1
 
 %build
 %configure

++++++ U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch ++++++
>From 6bda7ceda645e838723883d133d614def1511d16 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <[email protected]>
Date: Thu, 3 May 2012 15:07:30 +0200
Subject: [PATCH] EXA: Attempt to fix solid picture acceleration with UMS.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Only compile tested, but should fix
https://bugs.freedesktop.org/show_bug.cgi?id=49182 .

Signed-off-by: Michel Dänzer <[email protected]>
---
 src/radeon_exa_shared.c |   27 ++++++++++++++++++++++-----
 1 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/src/radeon_exa_shared.c b/src/radeon_exa_shared.c
index 28dc335..31e2870 100644
--- a/src/radeon_exa_shared.c
+++ b/src/radeon_exa_shared.c
@@ -128,19 +128,36 @@ Bool RADEONCheckBPP(int bpp)
 
 PixmapPtr RADEONSolidPixmap(ScreenPtr pScreen, uint32_t solid)
 {
+    ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+    RADEONInfoPtr info = RADEONPTR(pScrn);
     PixmapPtr pPix = pScreen->CreatePixmap(pScreen, 1, 1, 32, 0);
-    struct radeon_bo *bo;
 
     exaMoveInPixmap(pPix);
-    bo = radeon_get_pixmap_bo(pPix);
 
-    if (radeon_bo_map(bo, 1)) {
+#if defined(XF86DRM_MODE)
+    if (info->cs) {
+       struct radeon_bo *bo;
+
+       bo = radeon_get_pixmap_bo(pPix);
+
+       if (radeon_bo_map(bo, 1)) {
+           pScreen->DestroyPixmap(pPix);
+           return NULL;
+       }
+
+       memcpy(bo->ptr, &solid, 4);
+       radeon_bo_unmap(bo);
+
+       return pPix;
+    }
+#endif
+
+    if (!exaDrawableIsOffscreen(&pPix->drawable)) {
        pScreen->DestroyPixmap(pPix);
        return NULL;
     }
 
-    memcpy(bo->ptr, &solid, 4);
-    radeon_bo_unmap(bo);
+    memcpy(info->FB + exaGetPixmapOffset(pPix), &solid, 4);
 
     return pPix;
 }
-- 
1.7.3.4

++++++ U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch ++++++
>From b0b7d8d26fd107df342b5c87b0a38e5bb08101a9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <[email protected]>
Date: Wed, 9 May 2012 11:08:49 +0200
Subject: [PATCH] EXA/UMS: Synchronize to the GPU before writing solid colour to 
scratch pixmap.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

UMS doesn't do this automagically. It's a big hammer that will probably suck
for performance, but I don't have any better ideas right now.

Signed-off-by: Michel Dänzer <[email protected]>
---
 src/radeon_exa_shared.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/src/radeon_exa_shared.c b/src/radeon_exa_shared.c
index 31e2870..45222b5 100644
--- a/src/radeon_exa_shared.c
+++ b/src/radeon_exa_shared.c
@@ -157,6 +157,7 @@ PixmapPtr RADEONSolidPixmap(ScreenPtr pScreen, uint32_t 
solid)
        return NULL;
     }
 
+    info->accel_state->exa->WaitMarker(pScreen, 
info->accel_state->exaSyncMarker);
     memcpy(info->FB + exaGetPixmapOffset(pPix), &solid, 4);
 
     return pPix;
-- 
1.7.3.4

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to