Hello!

yesterday I got that annoying xserver hang on R200.
XFree86 4.3.99.xx from october, DRI CVS HEAD (a few days old), Kernel 2.4.22 with v4l2.
I verified with a fresh build of XFree86 CVS HEAD (yesterday).

The strange things are the backtraces:
1. "older" XFree and current DRI CVS:

(gdb) back
#0  0x4011fd54 in ioctl () from /lib/libc.so.6
#1  0xfffffc02 in ?? ()
#2  0x0867d5c6 in ?? ()
#3  0x084744d1 in RADEONWaitForIdleCP (pScrn=0x863dd40) at radeon_accelfuncs.c:120
#4  0x086b3f70 in ?? ()
#5  0x086d567c in ?? ()
#6  0x080bab5a in ProcPolySegment (client=0xa3a6e68) at dispatch.c:1870
#7  0x080b816c in Dispatch () at dispatch.c:450
#8  0x080c912b in main (argc=5, argv=0xbffffbc4, envp=0xbffffbdc) at main.c:435
#9  0x4006b7ee in __libc_start_main () from /lib/libc.so.6
(gdb) module
....
(gdb) back
#0  0x4011fd54 in ioctl () from /lib/libc.so.6
#1  0xfffffc02 in ?? ()
#2  0x0867d5c6 in fbBresDash32 (pDrawable=0x7, pGC=0x4, dashOffset=18, 
signdx=1074536654, signdy=141430640, axis=1811124
        y1=0, e=595, e1=38310, e3=-1073744340, len=141246320) at fbbits.h:119
#3  0x084744d1 in RADEONWaitForIdleCP (pScrn=0x863dd40) at radeon_accelfuncs.c:120
#4  0x086b3f70 in XAAPolyRectangleFallback () at xaaInitAccel.c:1465
#5  0x086d567c in XAAPolySegment (pDrawable=0xb99bb08, pGC=0xacb8e88, nseg=1, 
pSeg=0xb382770) at xaaSeg.c:92
#6  0x080bab5a in ProcPolySegment (client=0xa3a6e68) at dispatch.c:1870
#7  0x080b816c in Dispatch () at dispatch.c:450
#8  0x080c912b in main (argc=5, argv=0xbffffbc4, envp=0xbffffbdc) at main.c:435
#9  0x4006b7ee in __libc_start_main () from /lib/libc.so.6
(gdb) 

isnt it strange that RADEONWaitForIdleCP somehow calls fbBresDash32() ?

killall -KILL X -> System hangs, no ping
reset
booting...
installing current XFREE CVS HEAD

2. XFree86 CVS HEAD (with the "old" radeon kernelmodul from DRI, shouldnt matter)

(triggering hang..)

(gdb) back
#0  0x4012ed54 in ioctl () from /lib/libc.so.6
#1  0xfffffc02 in ?? ()
#2  0x085d2916 in general_textured_triangle ()
#3  0x08470039 in RADEONWaitForIdleCP ()
#4  0x0847a0ab in RADEONLoadPalette ()
#5  0x080b1068 in CMapRefreshColors ()
#6  0x080b0af0 in CMapReinstallMap ()
#7  0x080b0924 in CMapInstallColormap ()
#8  0x08188f0e in miUninstallColormap ()
#9  0x085c8e72 in fbUninstallColormap ()
#10 0x080825e9 in DGAUninstallColormap ()
#11 0x080b2d43 in FreeColormap ()
#12 0x080ccfca in FreeClientResources ()
#13 0x080bf674 in CloseDownClient ()
#14 0x080b9cd4 in Dispatch ()
#15 0x080cad8d in main ()
#16 0x4007a7ee in __libc_start_main () from /lib/libc.so.6
(gdb) 

strange.. general_textured_triangle() is somewhere in mesa source

Dump of assembler code for function RADEONWaitForIdleCP:
0x846ffe8 <RADEONWaitForIdleCP>:        push   %ebp
0x846ffe9 <RADEONWaitForIdleCP+1>:      mov    %esp,%ebp
0x846ffeb <RADEONWaitForIdleCP+3>:      sub    $0xc,%esp
0x846ffee <RADEONWaitForIdleCP+6>:      push   %edi
0x846ffef <RADEONWaitForIdleCP+7>:      push   %esi
0x846fff0 <RADEONWaitForIdleCP+8>:      push   %ebx
0x846fff1 <RADEONWaitForIdleCP+9>:      mov    0x8(%ebp),%edi
0x846fff4 <RADEONWaitForIdleCP+12>:     mov    0xf8(%edi),%esi
0x846fffa <RADEONWaitForIdleCP+18>:     mov    0x24(%esi),%ebx
0x846fffd <RADEONWaitForIdleCP+21>:     movl   $0x0,0xfffffffc(%ebp)
0x8470004 <RADEONWaitForIdleCP+28>:     cmpl   $0x0,0x14dc(%esi)
0x847000b <RADEONWaitForIdleCP+35>:     je     0x847013f <RADEONWaitForIdleCP+343>
0x8470011 <RADEONWaitForIdleCP+41>:     cmpl   $0x0,0x1548(%esi)
0x8470018 <RADEONWaitForIdleCP+48>:     je     0x8470028 <RADEONWaitForIdleCP+64>
0x847001a <RADEONWaitForIdleCP+50>:     add    $0xfffffff8,%esp
0x847001d <RADEONWaitForIdleCP+53>:     push   $0x0
0x847001f <RADEONWaitForIdleCP+55>:     push   %edi
0x8470020 <RADEONWaitForIdleCP+56>:     call   0x8472d78 <RADEONCPFlushIndirect>
0x8470025 <RADEONWaitForIdleCP+61>:     add    $0x10,%esp
0x8470028 <RADEONWaitForIdleCP+64>:     add    $0xfffffff8,%esp
0x847002b <RADEONWaitForIdleCP+67>:     push   $0x4
0x847002d <RADEONWaitForIdleCP+69>:     mov    0x147c(%esi),%eax
0x8470033 <RADEONWaitForIdleCP+75>:     push   %eax
0x8470034 <RADEONWaitForIdleCP+76>:     call   0x85d28f8 
<general_textured_triangle+4016>
0x8470039 <RADEONWaitForIdleCP+81>:     mov    %eax,%ebx
0x847003b <RADEONWaitForIdleCP+83>:     add    $0x10,%esp
0x847003e <RADEONWaitForIdleCP+86>:     test   %ebx,%ebx
0x8470040 <RADEONWaitForIdleCP+88>:     je     0x8470066 <RADEONWaitForIdleCP+126>
0x8470042 <RADEONWaitForIdleCP+90>:     cmp    $0xfffffc02,%ebx

0x8470048 <RADEONWaitForIdleCP+96>:     je     0x847006e <RADEONWaitForIdleCP+134>
0x847004a <RADEONWaitForIdleCP+98>:     add    $0xfffffff4,%esp
0x847004d <RADEONWaitForIdleCP+101>:    push   %ebx
0x847004e <RADEONWaitForIdleCP+102>:    push   $0x8483821
0x8470053 <RADEONWaitForIdleCP+107>:    push   $0x8483847
0x8470058 <RADEONWaitForIdleCP+112>:    push   $0x5
0x847005a <RADEONWaitForIdleCP+114>:    mov    0xc(%edi),%eax
0x847005d <RADEONWaitForIdleCP+117>:    push   %eax
0x847005e <RADEONWaitForIdleCP+118>:    call   0x80870b0 <xf86DrvMsg>
0x8470063 <RADEONWaitForIdleCP+123>:    add    $0x20,%esp
0x8470066 <RADEONWaitForIdleCP+126>:    cmp    $0xfffffc02,%ebx
0x847006c <RADEONWaitForIdleCP+132>:    jne    0x847007b <RADEONWaitForIdleCP+147>
0x847006e <RADEONWaitForIdleCP+134>:    mov    0xfffffffc(%ebp),%eax
0x8470071 <RADEONWaitForIdleCP+137>:    incl   0xfffffffc(%ebp)
0x8470074 <RADEONWaitForIdleCP+140>:    cmp    $0x1e847f,%eax
0x8470079 <RADEONWaitForIdleCP+145>:    jle    0x8470028 <RADEONWaitForIdleCP+64>
0x847007b <RADEONWaitForIdleCP+147>:    test   %ebx,%ebx
0x847007d <RADEONWaitForIdleCP+149>:    je     0x847023f <RADEONWaitForIdleCP+599>
0x8470083 <RADEONWaitForIdleCP+155>:    add    $0xfffffffc,%esp
0x8470086 <RADEONWaitForIdleCP+158>:    push   $0x84837b0
0x847008b <RADEONWaitForIdleCP+163>:    push   $0x5
0x847008d <RADEONWaitForIdleCP+165>:    mov    0xc(%edi),%eax
0x8470090 <RADEONWaitForIdleCP+168>:    push   %eax
0x8470091 <RADEONWaitForIdleCP+169>:    call   0x80870b0 <xf86DrvMsg>
0x8470096 <RADEONWaitForIdleCP+174>:    add    $0xfffffff4,%esp
0x8470099 <RADEONWaitForIdleCP+177>:    push   %edi
0x847009a <RADEONWaitForIdleCP+178>:    call   0x846e898 <RADEONEngineReset>
0x847009f <RADEONWaitForIdleCP+183>:    add    $0x20,%esp
0x84700a2 <RADEONWaitForIdleCP+186>:    add    $0xfffffff4,%esp
0x84700a5 <RADEONWaitForIdleCP+189>:    push   %edi

0x84700a6 <RADEONWaitForIdleCP+190>:    call   0x846e9f8 <RADEONEngineRestore>
0x84700ab <RADEONWaitForIdleCP+195>:    add    $0x10,%esp
0x84700ae <RADEONWaitForIdleCP+198>:    mov    0x14e0(%esi),%eax
0x84700b4 <RADEONWaitForIdleCP+204>:    cmp    $0x20000000,%eax
0x84700b9 <RADEONWaitForIdleCP+209>:    je     0x84700c8 <RADEONWaitForIdleCP+224>
0x84700bb <RADEONWaitForIdleCP+211>:    cmp    $0x40000000,%eax
0x84700c0 <RADEONWaitForIdleCP+216>:    jne    0x84700fc <RADEONWaitForIdleCP+276>
0x84700c2 <RADEONWaitForIdleCP+218>:    lea    0x0(%esi),%esi
0x84700c8 <RADEONWaitForIdleCP+224>:    add    $0xfffffff8,%esp
0x84700cb <RADEONWaitForIdleCP+227>:    push   $0x3
0x84700cd <RADEONWaitForIdleCP+229>:    mov    0x147c(%esi),%eax
0x84700d3 <RADEONWaitForIdleCP+235>:    push   %eax
0x84700d4 <RADEONWaitForIdleCP+236>:    call   0x85d28f8 
<general_textured_triangle+4016>
0x84700d9 <RADEONWaitForIdleCP+241>:    add    $0x10,%esp
0x84700dc <RADEONWaitForIdleCP+244>:    test   %eax,%eax
0x84700de <RADEONWaitForIdleCP+246>:    je     0x84700fc <RADEONWaitForIdleCP+276>
0x84700e0 <RADEONWaitForIdleCP+248>:    add    $0xfffffff4,%esp
0x84700e3 <RADEONWaitForIdleCP+251>:    push   %eax
0x84700e4 <RADEONWaitForIdleCP+252>:    push   $0x8483821
0x84700e9 <RADEONWaitForIdleCP+257>:    push   $0x848370f
0x84700ee <RADEONWaitForIdleCP+262>:    push   $0x5
0x84700f0 <RADEONWaitForIdleCP+264>:    mov    0xc(%edi),%eax
0x84700f3 <RADEONWaitForIdleCP+267>:    push   %eax
0x84700f4 <RADEONWaitForIdleCP+268>:    call   0x80870b0 <xf86DrvMsg>
0x84700f9 <RADEONWaitForIdleCP+273>:    add    $0x20,%esp
0x84700fc <RADEONWaitForIdleCP+276>:    add    $0xfffffff8,%esp
0x84700ff <RADEONWaitForIdleCP+279>:    push   $0x1
0x8470101 <RADEONWaitForIdleCP+281>:    mov    0x147c(%esi),%eax
0x8470107 <RADEONWaitForIdleCP+287>:    push   %eax
0x8470108 <RADEONWaitForIdleCP+288>:    call   0x85d28f8 
<general_textured_triangle+4016>

0x847010d <RADEONWaitForIdleCP+293>:    add    $0x10,%esp
0x8470110 <RADEONWaitForIdleCP+296>:    test   %eax,%eax
0x8470112 <RADEONWaitForIdleCP+298>:    je     0x8470130 <RADEONWaitForIdleCP+328>
0x8470114 <RADEONWaitForIdleCP+300>:    add    $0xfffffff4,%esp
0x8470117 <RADEONWaitForIdleCP+303>:    push   %eax
0x8470118 <RADEONWaitForIdleCP+304>:    push   $0x8483821
0x847011d <RADEONWaitForIdleCP+309>:    push   $0x8483720
0x8470122 <RADEONWaitForIdleCP+314>:    push   $0x5
0x8470124 <RADEONWaitForIdleCP+316>:    mov    0xc(%edi),%eax
0x8470127 <RADEONWaitForIdleCP+319>:    push   %eax
0x8470128 <RADEONWaitForIdleCP+320>:    call   0x80870b0 <xf86DrvMsg>
0x847012d <RADEONWaitForIdleCP+325>:    add    $0x20,%esp
0x8470130 <RADEONWaitForIdleCP+328>:    movl   $0x1,0x14dc(%esi)
0x847013a <RADEONWaitForIdleCP+338>:    jmp    0x8470028 <RADEONWaitForIdleCP+64>
0x847013f <RADEONWaitForIdleCP+343>:    add    $0xfffffff8,%esp
0x8470142 <RADEONWaitForIdleCP+346>:    push   $0x40
0x8470144 <RADEONWaitForIdleCP+348>:    push   %edi
0x8470145 <RADEONWaitForIdleCP+349>:    call   0x846e748 <RADEONWaitForFifoFunction>
0x847014a <RADEONWaitForIdleCP+354>:    add    $0x10,%esp
0x847014d <RADEONWaitForIdleCP+357>:    movl   $0x0,0xfffffffc(%ebp)
0x8470154 <RADEONWaitForIdleCP+364>:    lea    0x0(%esi,1),%esi
0x8470158 <RADEONWaitForIdleCP+368>:    mov    0xe40(%ebx),%eax
0x847015e <RADEONWaitForIdleCP+374>:    test   %eax,%eax
0x8470160 <RADEONWaitForIdleCP+376>:    jl     0x8470170 <RADEONWaitForIdleCP+392>
0x8470162 <RADEONWaitForIdleCP+378>:    add    $0xfffffff4,%esp
0x8470165 <RADEONWaitForIdleCP+381>:    push   %edi
0x8470166 <RADEONWaitForIdleCP+382>:    call   0x846e858 <RADEONEngineFlush>
0x847016b <RADEONWaitForIdleCP+387>:    jmp    0x847023f <RADEONWaitForIdleCP+599>
0x8470170 <RADEONWaitForIdleCP+392>:    incl   0xfffffffc(%ebp)
0x8470173 <RADEONWaitForIdleCP+395>:    cmpl   $0x1e847f,0xfffffffc(%ebp)

0x847017a <RADEONWaitForIdleCP+402>:    jle    0x8470158 <RADEONWaitForIdleCP+368>
0x847017c <RADEONWaitForIdleCP+404>:    add    $0xfffffffc,%esp
0x847017f <RADEONWaitForIdleCP+407>:    push   $0x84837b0
0x8470184 <RADEONWaitForIdleCP+412>:    push   $0x5
0x8470186 <RADEONWaitForIdleCP+414>:    mov    0xc(%edi),%eax
0x8470189 <RADEONWaitForIdleCP+417>:    push   %eax
0x847018a <RADEONWaitForIdleCP+418>:    call   0x80870b0 <xf86DrvMsg>
0x847018f <RADEONWaitForIdleCP+423>:    add    $0xfffffff4,%esp
0x8470192 <RADEONWaitForIdleCP+426>:    push   %edi
0x8470193 <RADEONWaitForIdleCP+427>:    call   0x846e898 <RADEONEngineReset>
0x8470198 <RADEONWaitForIdleCP+432>:    add    $0x20,%esp
0x847019b <RADEONWaitForIdleCP+435>:    add    $0xfffffff4,%esp
0x847019e <RADEONWaitForIdleCP+438>:    push   %edi
0x847019f <RADEONWaitForIdleCP+439>:    call   0x846e9f8 <RADEONEngineRestore>
0x84701a4 <RADEONWaitForIdleCP+444>:    add    $0x10,%esp
0x84701a7 <RADEONWaitForIdleCP+447>:    cmpl   $0x0,0x1474(%esi)
0x84701ae <RADEONWaitForIdleCP+454>:    je     0x847014d <RADEONWaitForIdleCP+357>
0x84701b0 <RADEONWaitForIdleCP+456>:    mov    0x14e0(%esi),%eax
0x84701b6 <RADEONWaitForIdleCP+462>:    cmp    $0x20000000,%eax
0x84701bb <RADEONWaitForIdleCP+467>:    je     0x84701c8 <RADEONWaitForIdleCP+480>
0x84701bd <RADEONWaitForIdleCP+469>:    cmp    $0x40000000,%eax
0x84701c2 <RADEONWaitForIdleCP+474>:    jne    0x84701fc <RADEONWaitForIdleCP+532>
0x84701c4 <RADEONWaitForIdleCP+476>:    lea    0x0(%esi,1),%esi
0x84701c8 <RADEONWaitForIdleCP+480>:    add    $0xfffffff8,%esp
0x84701cb <RADEONWaitForIdleCP+483>:    push   $0x3
0x84701cd <RADEONWaitForIdleCP+485>:    mov    0x147c(%esi),%eax
0x84701d3 <RADEONWaitForIdleCP+491>:    push   %eax
0x84701d4 <RADEONWaitForIdleCP+492>:    call   0x85d28f8 
<general_textured_triangle+4016>
0x84701d9 <RADEONWaitForIdleCP+497>:    add    $0x10,%esp
0x84701dc <RADEONWaitForIdleCP+500>:    test   %eax,%eax

0x84701de <RADEONWaitForIdleCP+502>:    je     0x84701fc <RADEONWaitForIdleCP+532>
0x84701e0 <RADEONWaitForIdleCP+504>:    add    $0xfffffff4,%esp
0x84701e3 <RADEONWaitForIdleCP+507>:    push   %eax
0x84701e4 <RADEONWaitForIdleCP+508>:    push   $0x8483821
0x84701e9 <RADEONWaitForIdleCP+513>:    push   $0x848370f
0x84701ee <RADEONWaitForIdleCP+518>:    push   $0x5
0x84701f0 <RADEONWaitForIdleCP+520>:    mov    0xc(%edi),%eax
0x84701f3 <RADEONWaitForIdleCP+523>:    push   %eax
0x84701f4 <RADEONWaitForIdleCP+524>:    call   0x80870b0 <xf86DrvMsg>
0x84701f9 <RADEONWaitForIdleCP+529>:    add    $0x20,%esp
0x84701fc <RADEONWaitForIdleCP+532>:    add    $0xfffffff8,%esp
0x84701ff <RADEONWaitForIdleCP+535>:    push   $0x1
0x8470201 <RADEONWaitForIdleCP+537>:    mov    0x147c(%esi),%eax
0x8470207 <RADEONWaitForIdleCP+543>:    push   %eax
0x8470208 <RADEONWaitForIdleCP+544>:    call   0x85d28f8 
<general_textured_triangle+4016>
0x847020d <RADEONWaitForIdleCP+549>:    add    $0x10,%esp
0x8470210 <RADEONWaitForIdleCP+552>:    test   %eax,%eax
0x8470212 <RADEONWaitForIdleCP+554>:    je     0x8470230 <RADEONWaitForIdleCP+584>
0x8470214 <RADEONWaitForIdleCP+556>:    add    $0xfffffff4,%esp
0x8470217 <RADEONWaitForIdleCP+559>:    push   %eax
0x8470218 <RADEONWaitForIdleCP+560>:    push   $0x8483821
0x847021d <RADEONWaitForIdleCP+565>:    push   $0x8483720
0x8470222 <RADEONWaitForIdleCP+570>:    push   $0x5
0x8470224 <RADEONWaitForIdleCP+572>:    mov    0xc(%edi),%eax
0x8470227 <RADEONWaitForIdleCP+575>:    push   %eax
0x8470228 <RADEONWaitForIdleCP+576>:    call   0x80870b0 <xf86DrvMsg>
0x847022d <RADEONWaitForIdleCP+581>:    add    $0x20,%esp
0x8470230 <RADEONWaitForIdleCP+584>:    movl   $0x1,0x14dc(%esi)
0x847023a <RADEONWaitForIdleCP+594>:    jmp    0x847014d <RADEONWaitForIdleCP+357>
0x847023f <RADEONWaitForIdleCP+599>:    lea    0xffffffe8(%ebp),%esp

0x8470242 <RADEONWaitForIdleCP+602>:    pop    %ebx
0x8470243 <RADEONWaitForIdleCP+603>:    pop    %esi
0x8470244 <RADEONWaitForIdleCP+604>:    pop    %edi
0x8470245 <RADEONWaitForIdleCP+605>:    mov    %ebp,%esp
0x8470247 <RADEONWaitForIdleCP+607>:    pop    %ebp
0x8470248 <RADEONWaitForIdleCP+608>:    ret    
0x8470249 <RADEONWaitForIdleCP+609>:    jmp    0x8470258 <RADEONRestoreAccelStateCP>
0x847024b <RADEONWaitForIdleCP+611>:    nop    
0x847024c <RADEONWaitForIdleCP+612>:    nop    
0x847024d <RADEONWaitForIdleCP+613>:    nop    
0x847024e <RADEONWaitForIdleCP+614>:    nop    
0x847024f <RADEONWaitForIdleCP+615>:    nop    
0x8470250 <RADEONWaitForIdleCP+616>:    nop    
0x8470251 <RADEONWaitForIdleCP+617>:    nop    
0x8470252 <RADEONWaitForIdleCP+618>:    nop    
0x8470253 <RADEONWaitForIdleCP+619>:    nop    
0x8470254 <RADEONWaitForIdleCP+620>:    nop    
0x8470255 <RADEONWaitForIdleCP+621>:    nop    
0x8470256 <RADEONWaitForIdleCP+622>:    nop    
0x8470257 <RADEONWaitForIdleCP+623>:    nop    
End of assembler dump.
(gdb) 

here is a dump what gets called:

0x85d28f8 <general_textured_triangle+4016>:     push   %ebp
0x85d28f9 <general_textured_triangle+4017>:     mov    %esp,%ebp
0x85d28fb <general_textured_triangle+4019>:     sub    $0x8,%esp
0x85d28fe <general_textured_triangle+4022>:     mov    0x8(%ebp),%edx
0x85d2901 <general_textured_triangle+4025>:     mov    0xc(%ebp),%eax
0x85d2904 <general_textured_triangle+4028>:     add    $0x40,%eax
0x85d2907 <general_textured_triangle+4031>:     or     $0x64,%ah
0x85d290a <general_textured_triangle+4034>:     add    $0xfffffffc,%esp
0x85d290d <general_textured_triangle+4037>:     push   $0x0
0x85d290f <general_textured_triangle+4039>:     push   %eax
0x85d2910 <general_textured_triangle+4040>:     push   %edx
0x85d2911 <general_textured_triangle+4041>:     call   0x809af80 <xf86ioctl>
0x85d2916 <general_textured_triangle+4046>:     test   %eax,%eax
0x85d2918 <general_textured_triangle+4048>:     jne    0x85d291e 
<general_textured_triangle+4054>
0x85d291a <general_textured_triangle+4050>:     xor    %eax,%eax
0x85d291c <general_textured_triangle+4052>:     jmp    0x85d2925 
<general_textured_triangle+4061>
0x85d291e <general_textured_triangle+4054>:     mov    0x81f18d8,%eax
0x85d2923 <general_textured_triangle+4059>:     neg    %eax
0x85d2925 <general_textured_triangle+4061>:     mov    %ebp,%esp
0x85d2927 <general_textured_triangle+4063>:     pop    %ebp
0x85d2928 <general_textured_triangle+4064>:     ret    
0x85d2929 <general_textured_triangle+4065>:     jmp    0x85d2938 
<general_textured_triangle+4080>
0x85d292b <general_textured_triangle+4067>:     nop    
0x85d292c <general_textured_triangle+4068>:     nop    
0x85d292d <general_textured_triangle+4069>:     nop    
0x85d292e <general_textured_triangle+4070>:     nop    
0x85d292f <general_textured_triangle+4071>:     nop    
0x85d2930 <general_textured_triangle+4072>:     nop    
0x85d2931 <general_textured_triangle+4073>:     nop    
0x85d2932 <general_textured_triangle+4074>:     nop    
0x85d2933 <general_textured_triangle+4075>:     nop    
0x85d2934 <general_textured_triangle+4076>:     nop    
0x85d2935 <general_textured_triangle+4077>:     nop    
---Type <return> to continue, or q <return> to quit---

(gdb) x/20 0x85d28f8
0x85d28f8 <general_textured_triangle+4016>:     0x83e58955      0x558b08ec      
0x0c458b08      0x8040c083
0x85d2908 <general_textured_triangle+4032>:     0xc48364cc      0x50006afc      
0x866ae852      0xc085ffac
0x85d2918 <general_textured_triangle+4048>:     0xc0310475      0xd8a107eb      
0xf7081f18      0x5dec89d8
0x85d2928 <general_textured_triangle+4064>:     0x900debc3      0x90909090      
0x90909090      0x90909090
0x85d2938 <general_textured_triangle+4080>:     0x83e58955      0x8b5314ec      
0x4d8b085d      0x0c558b10
(gdb) 
0x85d2948 <general_textured_triangle+4096>:     0x8b40c283      0xe0c11445      
0x64000d10      0xc2098000
0x85d2958 <general_textured_triangle+4112>:     0x51fcc483      0x1de85352      
0x85ffac86      0x310475c0
0x85d2968 <general_textured_triangle+4128>:     0xa107ebc0      0x081f18d8      
0x5d8bd8f7      0x5dec89e8
0x85d2978 <general_textured_triangle+4144>:     0x900debc3      0x90909090      
0x90909090      0x90909090
0x85d2988 <general_textured_triangle+4160>:     0x83e58955      0x8b5314ec      
0x4d8b085d      0x0c558b10
(gdb) 



it doesnt matter if I trigger the hang and disasseble then,
or if just starting a "fresh" Xserver which will work after detach.




4. heres a dump of a "running" Xserver with dri commented out in the Config:

now the call to <general_textured_triangle+4016> changed to a
call to <LoaderDefaultFunc>

Dump of assembler code for function RADEONWaitForIdleCP:
0x846ffb8 <RADEONWaitForIdleCP>:        push   %ebp
0x846ffb9 <RADEONWaitForIdleCP+1>:      mov    %esp,%ebp
0x846ffbb <RADEONWaitForIdleCP+3>:      sub    $0xc,%esp
0x846ffbe <RADEONWaitForIdleCP+6>:      push   %edi
0x846ffbf <RADEONWaitForIdleCP+7>:      push   %esi
0x846ffc0 <RADEONWaitForIdleCP+8>:      push   %ebx
0x846ffc1 <RADEONWaitForIdleCP+9>:      mov    0x8(%ebp),%edi
0x846ffc4 <RADEONWaitForIdleCP+12>:     mov    0xf8(%edi),%esi
0x846ffca <RADEONWaitForIdleCP+18>:     mov    0x24(%esi),%ebx
0x846ffcd <RADEONWaitForIdleCP+21>:     movl   $0x0,0xfffffffc(%ebp)
0x846ffd4 <RADEONWaitForIdleCP+28>:     cmpl   $0x0,0x14dc(%esi)
0x846ffdb <RADEONWaitForIdleCP+35>:     je     0x847010f <RADEONWaitForIdleCP+343>
0x846ffe1 <RADEONWaitForIdleCP+41>:     cmpl   $0x0,0x1548(%esi)
0x846ffe8 <RADEONWaitForIdleCP+48>:     je     0x846fff8 <RADEONWaitForIdleCP+64>
0x846ffea <RADEONWaitForIdleCP+50>:     add    $0xfffffff8,%esp
0x846ffed <RADEONWaitForIdleCP+53>:     push   $0x0
0x846ffef <RADEONWaitForIdleCP+55>:     push   %edi
0x846fff0 <RADEONWaitForIdleCP+56>:     call   0x8472d48 <RADEONCPFlushIndirect>
0x846fff5 <RADEONWaitForIdleCP+61>:     add    $0x10,%esp
0x846fff8 <RADEONWaitForIdleCP+64>:     add    $0xfffffff8,%esp
0x846fffb <RADEONWaitForIdleCP+67>:     push   $0x4
0x846fffd <RADEONWaitForIdleCP+69>:     mov    0x147c(%esi),%eax
0x8470003 <RADEONWaitForIdleCP+75>:     push   %eax
0x8470004 <RADEONWaitForIdleCP+76>:     call   0x80a2c80 <LoaderDefaultFunc>
0x8470009 <RADEONWaitForIdleCP+81>:     mov    %eax,%ebx
0x847000b <RADEONWaitForIdleCP+83>:     add    $0x10,%esp
0x847000e <RADEONWaitForIdleCP+86>:     test   %ebx,%ebx
0x8470010 <RADEONWaitForIdleCP+88>:     je     0x8470036 <RADEONWaitForIdleCP+126>
0x8470012 <RADEONWaitForIdleCP+90>:     cmp    $0xfffffc02,%ebx
0x8470018 <RADEONWaitForIdleCP+96>:     je     0x847003e <RADEONWaitForIdleCP+134>
0x847001a <RADEONWaitForIdleCP+98>:     add    $0xfffffff4,%esp
0x847001d <RADEONWaitForIdleCP+101>:    push   %ebx

0x847001e <RADEONWaitForIdleCP+102>:    push   $0x84837f1
0x8470023 <RADEONWaitForIdleCP+107>:    push   $0x8483817
0x8470028 <RADEONWaitForIdleCP+112>:    push   $0x5
0x847002a <RADEONWaitForIdleCP+114>:    mov    0xc(%edi),%eax
0x847002d <RADEONWaitForIdleCP+117>:    push   %eax
0x847002e <RADEONWaitForIdleCP+118>:    call   0x80870b0 <xf86DrvMsg>
0x8470033 <RADEONWaitForIdleCP+123>:    add    $0x20,%esp
0x8470036 <RADEONWaitForIdleCP+126>:    cmp    $0xfffffc02,%ebx
0x847003c <RADEONWaitForIdleCP+132>:    jne    0x847004b <RADEONWaitForIdleCP+147>
0x847003e <RADEONWaitForIdleCP+134>:    mov    0xfffffffc(%ebp),%eax
0x8470041 <RADEONWaitForIdleCP+137>:    incl   0xfffffffc(%ebp)
0x8470044 <RADEONWaitForIdleCP+140>:    cmp    $0x1e847f,%eax
0x8470049 <RADEONWaitForIdleCP+145>:    jle    0x846fff8 <RADEONWaitForIdleCP+64>
0x847004b <RADEONWaitForIdleCP+147>:    test   %ebx,%ebx
0x847004d <RADEONWaitForIdleCP+149>:    je     0x847020f <RADEONWaitForIdleCP+599>
0x8470053 <RADEONWaitForIdleCP+155>:    add    $0xfffffffc,%esp
0x8470056 <RADEONWaitForIdleCP+158>:    push   $0x8483780
0x847005b <RADEONWaitForIdleCP+163>:    push   $0x5
0x847005d <RADEONWaitForIdleCP+165>:    mov    0xc(%edi),%eax
0x8470060 <RADEONWaitForIdleCP+168>:    push   %eax
0x8470061 <RADEONWaitForIdleCP+169>:    call   0x80870b0 <xf86DrvMsg>
0x8470066 <RADEONWaitForIdleCP+174>:    add    $0xfffffff4,%esp
0x8470069 <RADEONWaitForIdleCP+177>:    push   %edi
0x847006a <RADEONWaitForIdleCP+178>:    call   0x846e868 <RADEONEngineReset>
0x847006f <RADEONWaitForIdleCP+183>:    add    $0x20,%esp
0x8470072 <RADEONWaitForIdleCP+186>:    add    $0xfffffff4,%esp
0x8470075 <RADEONWaitForIdleCP+189>:    push   %edi
0x8470076 <RADEONWaitForIdleCP+190>:    call   0x846e9c8 <RADEONEngineRestore>
0x847007b <RADEONWaitForIdleCP+195>:    add    $0x10,%esp
0x847007e <RADEONWaitForIdleCP+198>:    mov    0x14e0(%esi),%eax
0x8470084 <RADEONWaitForIdleCP+204>:    cmp    $0x20000000,%eax
0x8470089 <RADEONWaitForIdleCP+209>:    je     0x8470098 <RADEONWaitForIdleCP+224>
0x847008b <RADEONWaitForIdleCP+211>:    cmp    $0x40000000,%eax

0x8470090 <RADEONWaitForIdleCP+216>:    jne    0x84700cc <RADEONWaitForIdleCP+276>
0x8470092 <RADEONWaitForIdleCP+218>:    lea    0x0(%esi),%esi
0x8470098 <RADEONWaitForIdleCP+224>:    add    $0xfffffff8,%esp
0x847009b <RADEONWaitForIdleCP+227>:    push   $0x3
0x847009d <RADEONWaitForIdleCP+229>:    mov    0x147c(%esi),%eax
0x84700a3 <RADEONWaitForIdleCP+235>:    push   %eax
0x84700a4 <RADEONWaitForIdleCP+236>:    call   0x80a2c80 <LoaderDefaultFunc>
0x84700a9 <RADEONWaitForIdleCP+241>:    add    $0x10,%esp
0x84700ac <RADEONWaitForIdleCP+244>:    test   %eax,%eax
0x84700ae <RADEONWaitForIdleCP+246>:    je     0x84700cc <RADEONWaitForIdleCP+276>
0x84700b0 <RADEONWaitForIdleCP+248>:    add    $0xfffffff4,%esp
0x84700b3 <RADEONWaitForIdleCP+251>:    push   %eax
0x84700b4 <RADEONWaitForIdleCP+252>:    push   $0x84837f1
0x84700b9 <RADEONWaitForIdleCP+257>:    push   $0x84836df
0x84700be <RADEONWaitForIdleCP+262>:    push   $0x5
0x84700c0 <RADEONWaitForIdleCP+264>:    mov    0xc(%edi),%eax
0x84700c3 <RADEONWaitForIdleCP+267>:    push   %eax
0x84700c4 <RADEONWaitForIdleCP+268>:    call   0x80870b0 <xf86DrvMsg>
0x84700c9 <RADEONWaitForIdleCP+273>:    add    $0x20,%esp
0x84700cc <RADEONWaitForIdleCP+276>:    add    $0xfffffff8,%esp
0x84700cf <RADEONWaitForIdleCP+279>:    push   $0x1
0x84700d1 <RADEONWaitForIdleCP+281>:    mov    0x147c(%esi),%eax
0x84700d7 <RADEONWaitForIdleCP+287>:    push   %eax
0x84700d8 <RADEONWaitForIdleCP+288>:    call   0x80a2c80 <LoaderDefaultFunc>
0x84700dd <RADEONWaitForIdleCP+293>:    add    $0x10,%esp
0x84700e0 <RADEONWaitForIdleCP+296>:    test   %eax,%eax
0x84700e2 <RADEONWaitForIdleCP+298>:    je     0x8470100 <RADEONWaitForIdleCP+328>
0x84700e4 <RADEONWaitForIdleCP+300>:    add    $0xfffffff4,%esp
0x84700e7 <RADEONWaitForIdleCP+303>:    push   %eax
0x84700e8 <RADEONWaitForIdleCP+304>:    push   $0x84837f1
0x84700ed <RADEONWaitForIdleCP+309>:    push   $0x84836f0
0x84700f2 <RADEONWaitForIdleCP+314>:    push   $0x5
0x84700f4 <RADEONWaitForIdleCP+316>:    mov    0xc(%edi),%eax

0x84700f7 <RADEONWaitForIdleCP+319>:    push   %eax
0x84700f8 <RADEONWaitForIdleCP+320>:    call   0x80870b0 <xf86DrvMsg>
0x84700fd <RADEONWaitForIdleCP+325>:    add    $0x20,%esp
0x8470100 <RADEONWaitForIdleCP+328>:    movl   $0x1,0x14dc(%esi)
0x847010a <RADEONWaitForIdleCP+338>:    jmp    0x846fff8 <RADEONWaitForIdleCP+64>
0x847010f <RADEONWaitForIdleCP+343>:    add    $0xfffffff8,%esp
0x8470112 <RADEONWaitForIdleCP+346>:    push   $0x40
0x8470114 <RADEONWaitForIdleCP+348>:    push   %edi
0x8470115 <RADEONWaitForIdleCP+349>:    call   0x846e718 <RADEONWaitForFifoFunction>
0x847011a <RADEONWaitForIdleCP+354>:    add    $0x10,%esp
0x847011d <RADEONWaitForIdleCP+357>:    movl   $0x0,0xfffffffc(%ebp)
0x8470124 <RADEONWaitForIdleCP+364>:    lea    0x0(%esi,1),%esi
0x8470128 <RADEONWaitForIdleCP+368>:    mov    0xe40(%ebx),%eax
0x847012e <RADEONWaitForIdleCP+374>:    test   %eax,%eax
0x8470130 <RADEONWaitForIdleCP+376>:    jl     0x8470140 <RADEONWaitForIdleCP+392>
0x8470132 <RADEONWaitForIdleCP+378>:    add    $0xfffffff4,%esp
0x8470135 <RADEONWaitForIdleCP+381>:    push   %edi
0x8470136 <RADEONWaitForIdleCP+382>:    call   0x846e828 <RADEONEngineFlush>
0x847013b <RADEONWaitForIdleCP+387>:    jmp    0x847020f <RADEONWaitForIdleCP+599>
0x8470140 <RADEONWaitForIdleCP+392>:    incl   0xfffffffc(%ebp)
0x8470143 <RADEONWaitForIdleCP+395>:    cmpl   $0x1e847f,0xfffffffc(%ebp)
0x847014a <RADEONWaitForIdleCP+402>:    jle    0x8470128 <RADEONWaitForIdleCP+368>
0x847014c <RADEONWaitForIdleCP+404>:    add    $0xfffffffc,%esp
0x847014f <RADEONWaitForIdleCP+407>:    push   $0x8483780
0x8470154 <RADEONWaitForIdleCP+412>:    push   $0x5
0x8470156 <RADEONWaitForIdleCP+414>:    mov    0xc(%edi),%eax
0x8470159 <RADEONWaitForIdleCP+417>:    push   %eax
0x847015a <RADEONWaitForIdleCP+418>:    call   0x80870b0 <xf86DrvMsg>
0x847015f <RADEONWaitForIdleCP+423>:    add    $0xfffffff4,%esp
0x8470162 <RADEONWaitForIdleCP+426>:    push   %edi
0x8470163 <RADEONWaitForIdleCP+427>:    call   0x846e868 <RADEONEngineReset>
0x8470168 <RADEONWaitForIdleCP+432>:    add    $0x20,%esp
0x847016b <RADEONWaitForIdleCP+435>:    add    $0xfffffff4,%esp

0x847016e <RADEONWaitForIdleCP+438>:    push   %edi
0x847016f <RADEONWaitForIdleCP+439>:    call   0x846e9c8 <RADEONEngineRestore>
0x8470174 <RADEONWaitForIdleCP+444>:    add    $0x10,%esp
0x8470177 <RADEONWaitForIdleCP+447>:    cmpl   $0x0,0x1474(%esi)
0x847017e <RADEONWaitForIdleCP+454>:    je     0x847011d <RADEONWaitForIdleCP+357>
0x8470180 <RADEONWaitForIdleCP+456>:    mov    0x14e0(%esi),%eax
0x8470186 <RADEONWaitForIdleCP+462>:    cmp    $0x20000000,%eax
0x847018b <RADEONWaitForIdleCP+467>:    je     0x8470198 <RADEONWaitForIdleCP+480>
0x847018d <RADEONWaitForIdleCP+469>:    cmp    $0x40000000,%eax
0x8470192 <RADEONWaitForIdleCP+474>:    jne    0x84701cc <RADEONWaitForIdleCP+532>
0x8470194 <RADEONWaitForIdleCP+476>:    lea    0x0(%esi,1),%esi
0x8470198 <RADEONWaitForIdleCP+480>:    add    $0xfffffff8,%esp
0x847019b <RADEONWaitForIdleCP+483>:    push   $0x3
0x847019d <RADEONWaitForIdleCP+485>:    mov    0x147c(%esi),%eax
0x84701a3 <RADEONWaitForIdleCP+491>:    push   %eax
0x84701a4 <RADEONWaitForIdleCP+492>:    call   0x80a2c80 <LoaderDefaultFunc>
0x84701a9 <RADEONWaitForIdleCP+497>:    add    $0x10,%esp
0x84701ac <RADEONWaitForIdleCP+500>:    test   %eax,%eax
0x84701ae <RADEONWaitForIdleCP+502>:    je     0x84701cc <RADEONWaitForIdleCP+532>
0x84701b0 <RADEONWaitForIdleCP+504>:    add    $0xfffffff4,%esp
0x84701b3 <RADEONWaitForIdleCP+507>:    push   %eax
0x84701b4 <RADEONWaitForIdleCP+508>:    push   $0x84837f1
0x84701b9 <RADEONWaitForIdleCP+513>:    push   $0x84836df
0x84701be <RADEONWaitForIdleCP+518>:    push   $0x5
0x84701c0 <RADEONWaitForIdleCP+520>:    mov    0xc(%edi),%eax
0x84701c3 <RADEONWaitForIdleCP+523>:    push   %eax
0x84701c4 <RADEONWaitForIdleCP+524>:    call   0x80870b0 <xf86DrvMsg>
0x84701c9 <RADEONWaitForIdleCP+529>:    add    $0x20,%esp
0x84701cc <RADEONWaitForIdleCP+532>:    add    $0xfffffff8,%esp
0x84701cf <RADEONWaitForIdleCP+535>:    push   $0x1
0x84701d1 <RADEONWaitForIdleCP+537>:    mov    0x147c(%esi),%eax
0x84701d7 <RADEONWaitForIdleCP+543>:    push   %eax
0x84701d8 <RADEONWaitForIdleCP+544>:    call   0x80a2c80 <LoaderDefaultFunc>

0x84701dd <RADEONWaitForIdleCP+549>:    add    $0x10,%esp
0x84701e0 <RADEONWaitForIdleCP+552>:    test   %eax,%eax
0x84701e2 <RADEONWaitForIdleCP+554>:    je     0x8470200 <RADEONWaitForIdleCP+584>
0x84701e4 <RADEONWaitForIdleCP+556>:    add    $0xfffffff4,%esp
0x84701e7 <RADEONWaitForIdleCP+559>:    push   %eax
0x84701e8 <RADEONWaitForIdleCP+560>:    push   $0x84837f1
0x84701ed <RADEONWaitForIdleCP+565>:    push   $0x84836f0
0x84701f2 <RADEONWaitForIdleCP+570>:    push   $0x5
0x84701f4 <RADEONWaitForIdleCP+572>:    mov    0xc(%edi),%eax
0x84701f7 <RADEONWaitForIdleCP+575>:    push   %eax
0x84701f8 <RADEONWaitForIdleCP+576>:    call   0x80870b0 <xf86DrvMsg>
0x84701fd <RADEONWaitForIdleCP+581>:    add    $0x20,%esp
0x8470200 <RADEONWaitForIdleCP+584>:    movl   $0x1,0x14dc(%esi)
0x847020a <RADEONWaitForIdleCP+594>:    jmp    0x847011d <RADEONWaitForIdleCP+357>
0x847020f <RADEONWaitForIdleCP+599>:    lea    0xffffffe8(%ebp),%esp
0x8470212 <RADEONWaitForIdleCP+602>:    pop    %ebx
0x8470213 <RADEONWaitForIdleCP+603>:    pop    %esi
0x8470214 <RADEONWaitForIdleCP+604>:    pop    %edi
0x8470215 <RADEONWaitForIdleCP+605>:    mov    %ebp,%esp
0x8470217 <RADEONWaitForIdleCP+607>:    pop    %ebp
0x8470218 <RADEONWaitForIdleCP+608>:    ret    
0x8470219 <RADEONWaitForIdleCP+609>:    jmp    0x8470228 <RADEONRestoreAccelStateCP>
0x847021b <RADEONWaitForIdleCP+611>:    nop    
0x847021c <RADEONWaitForIdleCP+612>:    nop    
0x847021d <RADEONWaitForIdleCP+613>:    nop    
0x847021e <RADEONWaitForIdleCP+614>:    nop    
0x847021f <RADEONWaitForIdleCP+615>:    nop    
0x8470220 <RADEONWaitForIdleCP+616>:    nop    
0x8470221 <RADEONWaitForIdleCP+617>:    nop    
0x8470222 <RADEONWaitForIdleCP+618>:    nop    
0x8470223 <RADEONWaitForIdleCP+619>:    nop    
0x8470224 <RADEONWaitForIdleCP+620>:    nop    
0x8470225 <RADEONWaitForIdleCP+621>:    nop    

0x8470226 <RADEONWaitForIdleCP+622>:    nop    
0x8470227 <RADEONWaitForIdleCP+623>:    nop    
End of assembler dump.
(gdb) 

a dump of the function that would get called when dri isnt enabled:

(gdb) disass LoaderDefaultFunc
Dump of assembler code for function LoaderDefaultFunc:
0x80a2c80 <LoaderDefaultFunc>:  push   %ebp
0x80a2c81 <LoaderDefaultFunc+1>:        mov    %esp,%ebp
0x80a2c83 <LoaderDefaultFunc+3>:        sub    $0x8,%esp
0x80a2c86 <LoaderDefaultFunc+6>:        add    $0xfffffff4,%esp
0x80a2c89 <LoaderDefaultFunc+9>:        push   $0x819f1a0
0x80a2c8e <LoaderDefaultFunc+14>:       call   0x80e3360 <ErrorF>
0x80a2c93 <LoaderDefaultFunc+19>:       call   0x80a2c70 <xf86LoaderTrap>
0x80a2c98 <LoaderDefaultFunc+24>:       add    $0xfffffff4,%esp
0x80a2c9b <LoaderDefaultFunc+27>:       push   $0x819f1e0
0x80a2ca0 <LoaderDefaultFunc+32>:       call   0x80e32b0 <FatalError>
0x80a2ca5 <LoaderDefaultFunc+37>:       lea    0x0(%esi,1),%esi
0x80a2ca9 <LoaderDefaultFunc+41>:       lea    0x0(%edi,1),%edi
End of assembler dump.

(gdb) x/10 0x80a2c80
0x80a2c80 <LoaderDefaultFunc>:          0x83e58955      0xc48308ec      0xf1a068f4     
 0xcde80819
0x80a2c90 <LoaderDefaultFunc+16>:       0xe8000406      0xffffffd8      0x68f4c483     
 0x0819f1e0
0x80a2ca0 <LoaderDefaultFunc+32>:       0x04060be8      0x26748d00
(gdb) 
0x80a2ca8 <LoaderDefaultFunc+40>:       0x27bc8d00      0x00000000      0x83e58955     
 0x56572cec
0x80a2cb8 <LoaderUnload+8>:             0x08758b53      0x0100fe81      0x0c760000     
 0xffffffb8
0x80a2cc8 <LoaderUnload+24>:            0x009ce9ff      0xf6890000
(gdb) 



And here is a objdump -d of radeon_accel.o, section RADEONWaitForIdleCP

000018a0 <RADEONWaitForIdleCP>:
    18a0:       55                      push   %ebp
    18a1:       89 e5                   mov    %esp,%ebp
    18a3:       83 ec 0c                sub    $0xc,%esp
    18a6:       57                      push   %edi
    18a7:       56                      push   %esi
    18a8:       53                      push   %ebx
    18a9:       8b 7d 08                mov    0x8(%ebp),%edi
    18ac:       8b b7 f8 00 00 00       mov    0xf8(%edi),%esi
    18b2:       8b 5e 24                mov    0x24(%esi),%ebx
    18b5:       c7 45 fc 00 00 00 00    movl   $0x0,0xfffffffc(%ebp)
    18bc:       83 be dc 14 00 00 00    cmpl   $0x0,0x14dc(%esi)
    18c3:       0f 84 2e 01 00 00       je     19f7 <RADEONWaitForIdleCP+0x157>
    18c9:       83 be 48 15 00 00 00    cmpl   $0x0,0x1548(%esi)
    18d0:       74 0e                   je     18e0 <RADEONWaitForIdleCP+0x40>
    18d2:       83 c4 f8                add    $0xfffffff8,%esp
    18d5:       6a 00                   push   $0x0
    18d7:       57                      push   %edi
    18d8:       e8 fc ff ff ff          call   18d9 <RADEONWaitForIdleCP+0x39>
    18dd:       83 c4 10                add    $0x10,%esp
    18e0:       83 c4 f8                add    $0xfffffff8,%esp
    18e3:       6a 04                   push   $0x4
    18e5:       8b 86 7c 14 00 00       mov    0x147c(%esi),%eax
    18eb:       50                      push   %eax
    18ec:       e8 fc ff ff ff          call   18ed <RADEONWaitForIdleCP+0x4d>
    18f1:       89 c3                   mov    %eax,%ebx
    18f3:       83 c4 10                add    $0x10,%esp
    18f6:       85 db                   test   %ebx,%ebx
    18f8:       74 24                   je     191e <RADEONWaitForIdleCP+0x7e>
    18fa:       81 fb 02 fc ff ff       cmp    $0xfffffc02,%ebx
    1900:       74 24                   je     1926 <RADEONWaitForIdleCP+0x86>
    1902:       83 c4 f4                add    $0xfffffff4,%esp
    1905:       53                      push   %ebx
    1906:       68 51 01 00 00          push   $0x151
    190b:       68 77 01 00 00          push   $0x177
    1910:       6a 05                   push   $0x5
    1912:       8b 47 0c                mov    0xc(%edi),%eax
    1915:       50                      push   %eax
    1916:       e8 fc ff ff ff          call   1917 <RADEONWaitForIdleCP+0x77>
    191b:       83 c4 20                add    $0x20,%esp
    191e:       81 fb 02 fc ff ff       cmp    $0xfffffc02,%ebx
    1924:       75 0d                   jne    1933 <RADEONWaitForIdleCP+0x93>
    1926:       8b 45 fc                mov    0xfffffffc(%ebp),%eax
    1929:       ff 45 fc                incl   0xfffffffc(%ebp)
    192c:       3d 7f 84 1e 00          cmp    $0x1e847f,%eax
    1931:       7e ad                   jle    18e0 <RADEONWaitForIdleCP+0x40>
    1933:       85 db                   test   %ebx,%ebx
    1935:       0f 84 bc 01 00 00       je     1af7 <RADEONWaitForIdleCP+0x257>
    193b:       83 c4 fc                add    $0xfffffffc,%esp
    193e:       68 e0 00 00 00          push   $0xe0
    1943:       6a 05                   push   $0x5
    1945:       8b 47 0c                mov    0xc(%edi),%eax
    1948:       50                      push   %eax
    1949:       e8 fc ff ff ff          call   194a <RADEONWaitForIdleCP+0xaa>
    194e:       83 c4 f4                add    $0xfffffff4,%esp
    1951:       57                      push   %edi
    1952:       e8 fc ff ff ff          call   1953 <RADEONWaitForIdleCP+0xb3>
    1957:       83 c4 20                add    $0x20,%esp
    195a:       83 c4 f4                add    $0xfffffff4,%esp
    195d:       57                      push   %edi
    195e:       e8 fc ff ff ff          call   195f <RADEONWaitForIdleCP+0xbf>
    1963:       83 c4 10                add    $0x10,%esp
    1966:       8b 86 e0 14 00 00       mov    0x14e0(%esi),%eax
    196c:       3d 00 00 00 20          cmp    $0x20000000,%eax
    1971:       74 0d                   je     1980 <RADEONWaitForIdleCP+0xe0>
    1973:       3d 00 00 00 40          cmp    $0x40000000,%eax
    1978:       75 3a                   jne    19b4 <RADEONWaitForIdleCP+0x114>
    197a:       8d b6 00 00 00 00       lea    0x0(%esi),%esi
    1980:       83 c4 f8                add    $0xfffffff8,%esp
    1983:       6a 03                   push   $0x3
    1985:       8b 86 7c 14 00 00       mov    0x147c(%esi),%eax
    198b:       50                      push   %eax
    198c:       e8 fc ff ff ff          call   198d <RADEONWaitForIdleCP+0xed>
    1991:       83 c4 10                add    $0x10,%esp
    1994:       85 c0                   test   %eax,%eax
    1996:       74 1c                   je     19b4 <RADEONWaitForIdleCP+0x114>
    1998:       83 c4 f4                add    $0xfffffff4,%esp
    199b:       50                      push   %eax
    199c:       68 51 01 00 00          push   $0x151
    19a1:       68 3f 00 00 00          push   $0x3f
    19a6:       6a 05                   push   $0x5
    19a8:       8b 47 0c                mov    0xc(%edi),%eax
    19ab:       50                      push   %eax
    19ac:       e8 fc ff ff ff          call   19ad <RADEONWaitForIdleCP+0x10d>
    19b1:       83 c4 20                add    $0x20,%esp
    19b4:       83 c4 f8                add    $0xfffffff8,%esp
    19b7:       6a 01                   push   $0x1
    19b9:       8b 86 7c 14 00 00       mov    0x147c(%esi),%eax
    19bf:       50                      push   %eax
    19c0:       e8 fc ff ff ff          call   19c1 <RADEONWaitForIdleCP+0x121>
    19c5:       83 c4 10                add    $0x10,%esp
    19c8:       85 c0                   test   %eax,%eax
    19ca:       74 1c                   je     19e8 <RADEONWaitForIdleCP+0x148>
    19cc:       83 c4 f4                add    $0xfffffff4,%esp
    19cf:       50                      push   %eax
    19d0:       68 51 01 00 00          push   $0x151
    19d5:       68 50 00 00 00          push   $0x50
    19da:       6a 05                   push   $0x5
    19dc:       8b 47 0c                mov    0xc(%edi),%eax
    19df:       50                      push   %eax
    19e0:       e8 fc ff ff ff          call   19e1 <RADEONWaitForIdleCP+0x141>
    19e5:       83 c4 20                add    $0x20,%esp
    19e8:       c7 86 dc 14 00 00 01    movl   $0x1,0x14dc(%esi)
    19ef:       00 00 00 
    19f2:       e9 e9 fe ff ff          jmp    18e0 <RADEONWaitForIdleCP+0x40>
    19f7:       83 c4 f8                add    $0xfffffff8,%esp
    19fa:       6a 40                   push   $0x40
    19fc:       57                      push   %edi
    19fd:       e8 fc ff ff ff          call   19fe <RADEONWaitForIdleCP+0x15e>
    1a02:       83 c4 10                add    $0x10,%esp
    1a05:       c7 45 fc 00 00 00 00    movl   $0x0,0xfffffffc(%ebp)
    1a0c:       8d 74 26 00             lea    0x0(%esi,1),%esi
    1a10:       8b 83 40 0e 00 00       mov    0xe40(%ebx),%eax
    1a16:       85 c0                   test   %eax,%eax
    1a18:       7c 0e                   jl     1a28 <RADEONWaitForIdleCP+0x188>
    1a1a:       83 c4 f4                add    $0xfffffff4,%esp
    1a1d:       57                      push   %edi
    1a1e:       e8 fc ff ff ff          call   1a1f <RADEONWaitForIdleCP+0x17f>
    1a23:       e9 cf 00 00 00          jmp    1af7 <RADEONWaitForIdleCP+0x257>
    1a28:       ff 45 fc                incl   0xfffffffc(%ebp)
    1a2b:       81 7d fc 7f 84 1e 00    cmpl   $0x1e847f,0xfffffffc(%ebp)
    1a32:       7e dc                   jle    1a10 <RADEONWaitForIdleCP+0x170>
    1a34:       83 c4 fc                add    $0xfffffffc,%esp
    1a37:       68 e0 00 00 00          push   $0xe0
    1a3c:       6a 05                   push   $0x5
    1a3e:       8b 47 0c                mov    0xc(%edi),%eax
    1a41:       50                      push   %eax
    1a42:       e8 fc ff ff ff          call   1a43 <RADEONWaitForIdleCP+0x1a3>
    1a47:       83 c4 f4                add    $0xfffffff4,%esp
    1a4a:       57                      push   %edi
    1a4b:       e8 fc ff ff ff          call   1a4c <RADEONWaitForIdleCP+0x1ac>
    1a50:       83 c4 20                add    $0x20,%esp
    1a53:       83 c4 f4                add    $0xfffffff4,%esp
    1a56:       57                      push   %edi
    1a57:       e8 fc ff ff ff          call   1a58 <RADEONWaitForIdleCP+0x1b8>
    1a5c:       83 c4 10                add    $0x10,%esp
    1a5f:       83 be 74 14 00 00 00    cmpl   $0x0,0x1474(%esi)
    1a66:       74 9d                   je     1a05 <RADEONWaitForIdleCP+0x165>
    1a68:       8b 86 e0 14 00 00       mov    0x14e0(%esi),%eax
    1a6e:       3d 00 00 00 20          cmp    $0x20000000,%eax
    1a73:       74 0b                   je     1a80 <RADEONWaitForIdleCP+0x1e0>
    1a75:       3d 00 00 00 40          cmp    $0x40000000,%eax
    1a7a:       75 38                   jne    1ab4 <RADEONWaitForIdleCP+0x214>
    1a7c:       8d 74 26 00             lea    0x0(%esi,1),%esi
    1a80:       83 c4 f8                add    $0xfffffff8,%esp
    1a83:       6a 03                   push   $0x3
    1a85:       8b 86 7c 14 00 00       mov    0x147c(%esi),%eax
    1a8b:       50                      push   %eax
    1a8c:       e8 fc ff ff ff          call   1a8d <RADEONWaitForIdleCP+0x1ed>
    1a91:       83 c4 10                add    $0x10,%esp
    1a94:       85 c0                   test   %eax,%eax
    1a96:       74 1c                   je     1ab4 <RADEONWaitForIdleCP+0x214>
    1a98:       83 c4 f4                add    $0xfffffff4,%esp
    1a9b:       50                      push   %eax
    1a9c:       68 51 01 00 00          push   $0x151
    1aa1:       68 3f 00 00 00          push   $0x3f
    1aa6:       6a 05                   push   $0x5
    1aa8:       8b 47 0c                mov    0xc(%edi),%eax
    1aab:       50                      push   %eax
    1aac:       e8 fc ff ff ff          call   1aad <RADEONWaitForIdleCP+0x20d>
    1ab1:       83 c4 20                add    $0x20,%esp
    1ab4:       83 c4 f8                add    $0xfffffff8,%esp
    1ab7:       6a 01                   push   $0x1
    1ab9:       8b 86 7c 14 00 00       mov    0x147c(%esi),%eax
    1abf:       50                      push   %eax
    1ac0:       e8 fc ff ff ff          call   1ac1 <RADEONWaitForIdleCP+0x221>
    1ac5:       83 c4 10                add    $0x10,%esp
    1ac8:       85 c0                   test   %eax,%eax
    1aca:       74 1c                   je     1ae8 <RADEONWaitForIdleCP+0x248>
    1acc:       83 c4 f4                add    $0xfffffff4,%esp
    1acf:       50                      push   %eax
    1ad0:       68 51 01 00 00          push   $0x151
    1ad5:       68 50 00 00 00          push   $0x50
    1ada:       6a 05                   push   $0x5
    1adc:       8b 47 0c                mov    0xc(%edi),%eax
    1adf:       50                      push   %eax
    1ae0:       e8 fc ff ff ff          call   1ae1 <RADEONWaitForIdleCP+0x241>
    1ae5:       83 c4 20                add    $0x20,%esp
    1ae8:       c7 86 dc 14 00 00 01    movl   $0x1,0x14dc(%esi)
    1aef:       00 00 00 
    1af2:       e9 0e ff ff ff          jmp    1a05 <RADEONWaitForIdleCP+0x165>
    1af7:       8d 65 e8                lea    0xffffffe8(%ebp),%esp
    1afa:       5b                      pop    %ebx
    1afb:       5e                      pop    %esi
    1afc:       5f                      pop    %edi
    1afd:       89 ec                   mov    %ebp,%esp
    1aff:       5d                      pop    %ebp
    1b00:       c3                      ret    
    1b01:       eb 0d                   jmp    1b10 <RADEONRestoreAccelStateCP>
    1b03:       90                      nop    
    1b04:       90                      nop    
    1b05:       90                      nop    
    1b06:       90                      nop    
    1b07:       90                      nop    
    1b08:       90                      nop    
    1b09:       90                      nop    
    1b0a:       90                      nop    
    1b0b:       90                      nop    
    1b0c:       90                      nop    
    1b0d:       90                      nop    
    1b0e:       90                      nop    
    1b0f:       90                      nop    

00001b10 <RADEONRestoreAccelStateCP>:



somehow some calls get messed up during linking or is it just that old debugger?
(5.1 static, like described in the wiki)

could the old compiler (gcc 2.95.3) be the source of the problem?

any hints?

could someone attach to his Xserver to see if this bogus call to LoaderDefaultFunc
or general_textured_triangle+4016 exists in his setup, too?

best regards,
Andreas


-------------------------------------------------------
This SF.net email is sponsored by: SF.net Giveback Program.
Does SourceForge.net help you be more productive?  Does it
help you create better code?  SHARE THE LOVE, and help us help
YOU!  Click Here: http://sourceforge.net/donate/
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to