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