I modified my -ati driver according to the patch in comment #9 and then I put a
breakpoint on the "return FALSE" just below it. This coordinate hack patch
indeed makes the bug go away! And when I surf to mundoplus.tv I do hit the
proposed breakpoint and here is the "bt full" from that breakpoint. I compiled
with DEB_BUILD_OPTIONS="noopt nostrip" which I think means essentially "-O0
-g3" or something like that.
Program received signal SIGINT, Interrupt.
0xb7f6a430 in __kernel_vsyscall ()
(gdb) break radeon_exa_funcs.c:277
Breakpoint 2 at 0xb796c956: file ../../src/radeon_exa_funcs.c, line 277.
(gdb) info breakpoints
Num Type Disp Enb Address What
2 breakpoint keep y 0xb796c956 in RADEONUploadToScreenCP at
../../src/radeon_exa_funcs.c:277
(gdb) c
Continuing.
Breakpoint 2, RADEONUploadToScreenCP (pDst=0xa2c94008, x=0, y=8190, w=16, h=2,
src=0x8a97228
"��������������������������������������������������������������������������������������������������������������������������������7",
src_pitch=64) at ../../src/radeon_exa_funcs.c:277
277 return FALSE;
(gdb) bt full
#0 RADEONUploadToScreenCP (pDst=0xa2c94008, x=0, y=8190, w=16, h=2,
src=0x8a97228
"��������������������������������������������������������������������������������������������������������������������������������7",
src_pitch=64) at ../../src/radeon_exa_funcs.c:277
pScrn = (ScrnInfoPtr) 0x85fd5e8
info = (RADEONInfoPtr) 0x85fbea8
bpp = 32
hpass = 2731098120
buf_pitch = 3077628745 dst_pitch_off = 3213388776
__func__ = "RADEONUploadToScreenCP"
#1 0xb770f344 in exaPutImage (pDrawable=0xa2c94008, pGC=0x8a71738, depth=24,
x=0, y=8190, w=16, h=2, leftPad=0, format=2,
bits=0x8a97228
"��������������������������������������������������������������������������������������������������������������������������������7")
at ../../exa/exa_accel.c:211
No locals.
#2 0x08182a10 in damagePutImage (pDrawable=0xa2c94008, pGC=0x8a71738,
depth=24, x=0, y=8190, w=16, h=2, leftPad=0, format=2,
pImage=0x8a97228
"��������������������������������������������������������������������������������������������������������������������������������7")
at ../../../miext/damage/damage.c:905
pGCPriv = (DamageGCPrivPtr) 0x8a054b0
oldFuncs = (GCFuncs *) 0x8213a80
#3 0x0808a301 in ProcPutImage (client=0x8980830) at ../../dix/dispatch.c:1897
pGC = (GC *) 0x8a71738
pDraw = (DrawablePtr) 0xa2c94008
length = <value optimized out>
#4 0x0808cff7 in Dispatch () at ../../dix/dispatch.c:437
result = <value optimized out>
client = (ClientPtr) 0x8980830
nready = 0
start_tick = 660
#5 0x080722fd in main (argc=10, argv=0xbf886f24, envp=0xbf886f50) at
../../dix/main.c:397
i = <value optimized out> alwaysCheckForInput = {0, 1}
(gdb)
I modified my -ati driver according to the patch in comment #9 and then I put a OPTIONS= "noopt nostrip" which I think means essentially "-O0
breakpoint on the "return FALSE" just below it. This coordinate hack patch
indeed makes the bug go away! And when I surf to mundoplus.tv I do hit the
proposed breakpoint and here is the "bt full" from that breakpoint. I compiled
with DEB_BUILD_
-g3" or something like that.
Program received signal SIGINT, Interrupt. exa_funcs. c:277 radeon_ exa_funcs. c, line 277. creenCP at radeon_ exa_funcs. c:277
0xb7f6a430 in __kernel_vsyscall ()
(gdb) break radeon_
Breakpoint 2 at 0xb796c956: file ../../src/
(gdb) info breakpoints
Num Type Disp Enb Address What
2 breakpoint keep y 0xb796c956 in RADEONUploadToS
../../src/
(gdb) c
Continuing.
Breakpoint 2, RADEONUploadToS creenCP (pDst=0xa2c94008, x=0, y=8190, w=16, h=2, ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ���7", radeon_ exa_funcs. c:277 creenCP (pDst=0xa2c94008, x=0, y=8190, w=16, h=2, ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ���7", radeon_ exa_funcs. c:277
dst_pitch_ off = 3213388776 ScreenCP" 0xa2c94008, pGC=0x8a71738, depth=24, ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ���7") exa_accel. c:211 0xa2c94008, pGC=0x8a71738, 0x8a97228 ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ������� ���7") ./miext/ damage/ damage. c:905 dispatch. c:1897 dispatch. c:437 main.c: 397
alwaysCheckFor Input = {0, 1}
src=0x8a97228
"������
src_pitch=64) at ../../src/
277 return FALSE;
(gdb) bt full
#0 RADEONUploadToS
src=0x8a97228
"������
src_pitch=64) at ../../src/
pScrn = (ScrnInfoPtr) 0x85fd5e8
info = (RADEONInfoPtr) 0x85fbea8
bpp = 32
hpass = 2731098120
buf_pitch = 3077628745
__func__ = "RADEONUploadTo
#1 0xb770f344 in exaPutImage (pDrawable=
x=0, y=8190, w=16, h=2, leftPad=0, format=2,
bits=0x8a97228
"������
at ../../exa/
No locals.
#2 0x08182a10 in damagePutImage (pDrawable=
depth=24, x=0, y=8190, w=16, h=2, leftPad=0, format=2,
pImage=
"������
at ../../.
pGCPriv = (DamageGCPrivPtr) 0x8a054b0
oldFuncs = (GCFuncs *) 0x8213a80
#3 0x0808a301 in ProcPutImage (client=0x8980830) at ../../dix/
pGC = (GC *) 0x8a71738
pDraw = (DrawablePtr) 0xa2c94008
length = <value optimized out>
#4 0x0808cff7 in Dispatch () at ../../dix/
result = <value optimized out>
client = (ClientPtr) 0x8980830
nready = 0
start_tick = 660
#5 0x080722fd in main (argc=10, argv=0xbf886f24, envp=0xbf886f50) at
../../dix/
i = <value optimized out>
(gdb)