Hi,

after the integration of the R600 functions my xorg log is being flooded
with the following messages:

(EE) RADEON(0): BEGIN_RING without end at radeon_accel.c:860
(EE) RADEON(0): ADVANCE_RING without begin at radeon_accel.c:883

I'm using an RS690. The messages occur during video playback, one
message for each frame. After some more study I found the messages
originated from RADEONCopyMungedData called from RADEONPutImageTextured.
I checked the changes introduced with the R600 adoptions and finally
found the problem was introduced by the RADEONCP_REFRESH "calls" in
RADEONCPFlushIndirect and RADEONCPReleaseIndirect. Moving the "calls" to
the R600 specific part fixed the error messages for me.

I've attached a patch with this change. The one question left for me is
if the behavior with the "call" can be explained or if this is just
showing a problem somewhere else in the code.

Regds,
Christiaan van Dijk.


diff -u -r xf86-video-ati-6.12.0/src/radeon_accel.c 
xf86-video-ati-6.12.0-work/src/radeon_accel.c
--- xf86-video-ati-6.12.0/src/radeon_accel.c    2009-03-14 00:23:19.000000000 
+0100
+++ xf86-video-ati-6.12.0-work/src/radeon_accel.c       2009-03-15 
13:12:33.000000000 +0100
@@ -689,7 +689,6 @@
     int                start  = info->cp->indirectStart;
     drm_radeon_indirect_t  indirect;
     RING_LOCALS;
-    RADEONCP_REFRESH(pScrn, info);
 
     if (!buffer) return;
     if (start == buffer->used && !discard) return;
@@ -700,6 +699,7 @@
     }
 
     if (info->ChipFamily >= CHIP_FAMILY_R600) {
+       RADEONCP_REFRESH(pScrn, info);
        while (buffer->used & 0x3c){
            BEGIN_RING(1);
            OUT_RING(CP_PACKET2()); /* fill up to multiple of 16 dwords */
@@ -736,10 +736,9 @@
     int                start  = info->cp->indirectStart;
     drm_radeon_indirect_t  indirect;
     RING_LOCALS;
-    RADEONCP_REFRESH(pScrn, info);
-
 
     if (info->ChipFamily >= CHIP_FAMILY_R600) {
+       RADEONCP_REFRESH(pScrn, info);
        if (buffer) {
            while (buffer->used & 0x3c) {
                BEGIN_RING(1);

_______________________________________________
xorg-driver-ati mailing list
[email protected]
http://lists.x.org/mailman/listinfo/xorg-driver-ati

Reply via email to