Bug 1773

Summary: DRI with radeon7500 causes lockups
Product: Mesa Reporter: Mateusz <mateusz>
Component: Drivers/DRI/R100Assignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact:
Severity: blocker    
Priority: high CC: benh
Version: git   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Mateusz 2004-11-03 11:04:21 UTC
The glxgears freezes everything and

Section "ServerFlags"
        ....
        Option "NoTrapSignals" "true"
EndSection

dosent help

but when I tried 
#~ sleep ; glxgears 
then changed on console in order to launch strace and redirect output to a file,
when I got back on X to reproduce the bug and get everything freezed,after
reboot I got the following strace log...

execve("/usr/bin/X11/glxgears", ["glxgears", "-display", ":0"], [/* 22 vars */]) = 0
uname({sys="Linux", node="hell", ...})  = 0
brk(0)                                  = 0x804c000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x40017000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=113140, ...}) = 0
old_mmap(NULL, 113140, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40018000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/libGL.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0P7\2\000"..., 512) =
512fstat64(3, {st_mode=S_IFREG|0755, st_size=1695597, ...}) = 0
old_mmap(NULL, 507180, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40034000
old_mmap(0x400ac000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x78000) = 0x400ac000
old_mmap(0x400af000, 3372, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x400af000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/libXext.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220YcA"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=54776, ...}) = 0
old_mmap(0x41633000, 56820, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) =
0x41633000old_mmap(0x41640000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0xc000) = 0x41640000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/libX11.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\240\4O"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=814968, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x400b0000
old_mmap(0x414df000, 814968, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x414df000
old_mmap(0x415a3000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0xc4000) = 0x415a3000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0PE\0\000"..., 512) =
512fstat64(3, {st_mode=S_IFREG|0644, st_size=82438, ...}) = 0
old_mmap(NULL, 64804, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x400b1000
old_mmap(0x400be000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0xd000) = 0x400be000
old_mmap(0x400bf000, 7460, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x400bf000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libm.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0006\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=141312, ...}) = 0
old_mmap(NULL, 139712, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x400c1000
old_mmap(0x400e3000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x22000) = 0x400e3000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300X\1"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=1278692, ...}) = 0
old_mmap(NULL, 1289004, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x400e4000
old_mmap(0x40214000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x12f000) = 0x40214000
old_mmap(0x4021c000, 11052, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4021c000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/X11R6/lib/libXxf86vm.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\340\r\0"..., 512) =
512fstat64(3, {st_mode=S_IFREG|0755, st_size=125923, ...}) = 0
old_mmap(NULL, 19244, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4021f000
old_mmap(0x40223000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x3000) = 0x40223000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/tls/i686/cmov/libdl.so.2", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\32"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9416, ...}) = 0
old_mmap(NULL, 12272, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40224000
old_mmap(0x40226000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0x1000) = 0x40226000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x40227000
mprotect(0x40034000, 491520, PROT_READ|PROT_WRITE) = 0
mprotect(0x40034000, 491520, PROT_READ|PROT_EXEC) = 0
set_thread_area({entry_number:-1 -> 6, base_addr:0x40227980, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0,
useable:1}) = 0
munmap(0x40018000, 113140)              = 0
set_tid_address(0x402279c8)             = 7585
rt_sigaction(SIGRTMIN, {0x400b54b0, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
brk(0)                                  = 0x804c000
brk(0x806d000)                          = 0x806d000
brk(0)                                  = 0x806d000
uname({sys="Linux", node="hell", ...})  = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 3
uname({sys="Linux", node="hell", ...})  = 0
uname({sys="Linux", node="hell", ...})  = 0
connect(3, {sa_family=AF_FILE, path="/tmp/.X11-unix/X0"}, 19) = 0
uname({sys="Linux", node="hell", ...})  = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
access("/root/.Xauthority", R_OK)       = 0
open("/root/.Xauthority", O_RDONLY)     = 4
fstat64(4, {st_mode=S_IFREG|0600, st_size=98, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x40018000
read(4, "\1\0\0\4hell\0\0010\0\22MIT-MAGIC-COOKIE-1\0"..., 4096) = 98
read(4, "", 4096)                       = 0
close(4)                                = 0
munmap(0x40018000, 4096)                = 0
writev(3, [{"l\0\v\0\0\0\22\0\20\0\0\0", 12}, {"MIT-MAGIC-COOKIE-1", 18},
{"\0\0", 2}, {"/\337{\354\246\32#}\333\315\210\351\254\232m\20", 16}], 4) = 48
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
read(3, "\1\0\v\0\0\0\223\0", 8)        = 8
read(3, "K\300\237\3\0\0\240\0\377\377\37\0\0\1\0\0\24\0\377\377"..., 588) =
588write(3, "7\0\5\0\0\0\240\0H\0\0\0\10\0\0\0\377\377\377\0b\0\5\0"..., 64) = 64
read(3, "\1\0\2\0\0\0\0\0\1\203\0\0\0\0\0\0\0\0\0\0\v\0\0\0\240"..., 32) = 32
read(3, "\1\0\3\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\220i\250"..., 32) =
32write(3, "\203\0\1\0", 4)               = 4
read(3, "\1\0\4\0\0\0\0\0\377\377?\0\0\0\0\0\1\0\0\0\v\0\0\0\240"..., 32) = 32
writev(3, [{"b\0\5\0\t\0\240\0", 8}, {"XKEYBOARD", 9}, {"\0\0\0", 3}], 3) = 20
read(3, "\1\0\5\0\0\0\0\0\1\225n\257\0\0\0\0\1\0\0\0\v\0\0\0\240"..., 32) = 32
write(3, "\225\0\2\0\1\0\0\0", 8)       = 8
read(3, "\1\1\6\0\0\0\0\0\1\0\0\0\0\0\0\0\1\0\0\0\v\0\0\0\240\364"..., 32) = 32
writev(3, [{"b\0\3\0\3\0\0\0", 8}, {"GLX", 3}, {"\0", 1}], 3) = 12
read(3, "\1\0\7\0\0\0\0\0\1\220M\234\0\0\0\0\1\0\0\0\v\0\0\0\240"..., 32) = 32
write(3, "\220\7\3\0\1\0\0\0\4\0\0\0", 12) = 12
read(3, "\1\0\10\0\0\0\0\0\1\0\0\0\2\0\0\0000\315\246\10\0\0\0\0"..., 32) = 32
writev(3, [{"b\7\5\0\v\0\0\0", 8}, {"XFree86-DRI", 11}, {"\0", 1}], 3) = 20
read(3, "\1\0\t\0\0\0\0\0\1\200\0\200\0\0\0\0\1\0\0\0\v\0\0\0\240"..., 32) = 32
write(3, "\200\0\1\0", 4)               = 4
read(3, "\1\0\n\0\0\0\0\0\4\0\1\0\0\0\0\0\1\0\0\0\v\0\0\0\240\364"..., 32) = 32
write(3, "\200\1\2\0\0\0\0\0", 8)       = 8
read(3, "\1\0\v\0\0\0\0\0\1i\250\10\0\0\0\0\1\0\0\0\v\0\0\0\240"..., 32) = 32
write(3, "\200\4\2\0\0\0\0\0", 8)       = 8
read(3, "\1i\f\0\2\0\0\0\4\0\0\0\0\0\0\0\1\0\0\0\6\0\0\0\240\364"..., 32) = 32
readv(3, [{"radeon", 6}, {"\0\0", 2}], 2) = 8
geteuid32()                             = 0
getuid32()                              = 0
futex(0x40226fec, FUTEX_WAKE, 2147483647) = 0
open("/usr/X11R6/lib/modules/dri/radeon_dri.so", O_RDONLY) = 4
read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\300\207"..., 512) =
512fstat64(4, {st_mode=S_IFREG|0755, st_size=15331897, ...}) = 0
old_mmap(NULL, 2063824, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x40228000
old_mmap(0x403ec000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4,
0x1c3000) = 0x403ec000
old_mmap(0x403fe000, 138704, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x403fe000
close(4)                                = 0
open("/etc/ld.so.cache", O_RDONLY)      = 4
fstat64(4, {st_mode=S_IFREG|0644, st_size=113140, ...}) = 0
old_mmap(NULL, 113140, PROT_READ, MAP_PRIVATE, 4, 0) = 0x40420000
close(4)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libexpat.so.1", O_RDONLY) = 4
read(4, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260\"\0"..., 512) =
512fstat64(4, {st_mode=S_IFREG|0644, st_size=129972, ...}) = 0
old_mmap(NULL, 128880, PROT_READ|PROT_EXEC, MAP_PRIVATE, 4, 0) = 0x4043c000
old_mmap(0x40459000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 4,
0x1d000) = 0x40459000
close(4)                                = 0
mprotect(0x40228000, 1851392, PROT_READ|PROT_WRITE) = 0
mprotect(0x40228000, 1851392, PROT_READ|PROT_EXEC) = 0
munmap(0x40420000, 113140)              = 0
write(3, "\220\23\3\0\0\0\0\0\2\0\0\0", 12) = 12
read(3, "\1i\r\0\1\0\0\0\0\0\0\0\4\0\0\0\v\0\0\0\220i\250\10\0\20"..., 32) = 32
read(3, "1.2\0", 4)                     = 4
write(3, "\220\23\3\0\0\0\0\0\3\0\0\0", 12) = 12
read(3, "\1i\16\0+\0\0\0\0\0\0\0\253\0\0\0\v\0\0\0\220i\250\10\0"..., 32) = 32
read(3, "GLX_ARB_multisample GLX_EXT_visu"..., 171) = 171
read(3, "\0", 1)                        = 1
write(3, "\220\21\4\0\4\0\1\0\3\0\0\0\0\0\0\0", 16) = 16
read(3, "\1\0\17\0\300\1\0\0\20\0\0\0\34\0\0\0\0\0\0\0\0\0\0\0\350"..., 32) =
32read(3, "\v\200\0\0#\0\0\0\23\200\0\0#\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0$\0\0\0\23\200\0\0$\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0%\0\0\0\23\200\0\0%\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0&\0\0\0\23\200\0\0&\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0\'\0\0\0\23\200\0\0\'\0\0\0\22\200\0\0\1\0\0"..., 224) = 224
read(3, "\v\200\0\0(\0\0\0\23\200\0\0(\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0)\0\0\0\23\200\0\0)\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0*\0\0\0\23\200\0\0*\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0+\0\0\0\23\200\0\0+\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0,\0\0\0\23\200\0\0,\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0-\0\0\0\23\200\0\0-\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0.\0\0\0\23\200\0\0.\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0/\0\0\0\23\200\0\0/\0\0\0\22\200\0\0\1\0\0\0"..., 224) = 224
read(3, "\v\200\0\0000\0\0\0\23\200\0\0000\0\0\0\22\200\0\0\1\0"..., 224) = 224
read(3, "\v\200\0\0001\0\0\0\23\200\0\0001\0\0\0\22\200\0\0\1\0"..., 224) = 224
read(3, "\v\200\0\0002\0\0\0\23\200\0\0002\0\0\0\22\200\0\0\1\0"..., 224) = 224
write(3, "\200\2\2\0\0\0\0\0", 8)       = 8
read(3, "\1i\20\0\4\0\0\0\0\360\217\340\0\0\0\0\20\0\0\0\v\0\0\0"..., 32) = 32
readv(3, [{"pci:0000:01:00.0", 16}, {"", 0}], 2) = 16
geteuid32()                             = 0
stat64("/dev/dri", {st_mode=S_IFDIR|0755, st_size=60, ...}) = 0
stat64("/dev/dri/card0", {st_mode=S_IFCHR|0666, st_rdev=makedev(226, 0), ...}) = 0
open("/dev/dri/card0", O_RDWR)          = 4
ioctl(4, DECODER_SET_PICTURE, 0xbffff740) = 0
ioctl(4, DECODER_GET_CAPABILITIES, 0xbffff748) = 0
ioctl(4, DECODER_GET_CAPABILITIES, 0xbffff748) = 0
ioctl(4, DECODER_GET_STATUS or DEVFSDIOC_SET_EVENT_MASK, 0xbffff7a0) = 0
ioctl(4, DEVFSDIOC_GET_PROTO_REV, 0x804db70) = 0
ioctl(4, DEVFSDIOC_GET_PROTO_REV, 0x804db70) = 0
write(3, "\200\v\3\0\0\0\0\0\16\0\0\0", 12) = 12
read(3, "\1i\21\0\0\0\0\0\1\0\0\0\205\3E\10@\312\246\10\v\0\0\0"..., 32) = 32
write(3, "\200\4\2\0\0\0\0\0", 8)       = 8
read(3, "\1i\22\0\2\0\0\0\4\0\0\0\0\0\0\0\1\0\0\0\6\0\0\0\240\364"..., 32) = 32
readv(3, [{"radeon", 6}, {"00", 2}], 2) = 8
write(3, "\200\n\2\0\0\0\0\0", 8)       = 8
read(3, "\1i\23\0\31\0\0\0\0\0\0\320\0\0\0\0\0\0\0\0\0\0\0\4\0\24"..., 32) = 32
read(3, "WQ\0\0\0\5\0\0\0\4\0\0\30\0\0\0 \0\0\0\0\0\0\0\4\0\0\0"..., 100) = 100
mmap2(NULL, 67108864, PROT_READ|PROT_WRITE, MAP_SHARED, 4, 0xd0000) =
0x41641000mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_SHARED, 4, 0xe08ff) =
0x45641000
ioctl(4, 0xc0086451, 0xbffff708)        = 0
ioctl(4, 0xc0086451, 0xbffff708)        = 0
mmap2(NULL, 524288, PROT_READ|PROT_WRITE, MAP_SHARED, 4, 0xdfef0) = 0x45643000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED, 4, 0xe0101) = 0x456c3000
ioctl(4, 0xc00c6419, 0xbffff6c0)        = 0
ioctl(4, 0xc00c6419, 0xbffff6c0)        = 0
mmap2(NULL, 5111808, PROT_READ|PROT_WRITE, MAP_SHARED, 4, 0xe0302) = 0x458c4000
ioctl(4, 0x400c6459, 0xbffff710)        = 0
writev(3, [{"\220\24S\2\1\0\0\0\4\0\0\0:\t\0\0", 16}, {"GL_ARB_depth_texture
GL_ARB_imag"..., 2362}, {"\0\0", 2}], 3) = 2380
mmap2(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x45da4000
write(3, "N\0\4\0\1\0\240\0H\0\0\0\'\0\0\0\1\30\f\0\2\0\240\0H\0"..., 312) =
312read(3, "\1\0\33\0\0\0\0\0\5\0\0\0@\312\246\10\270j\250\10\0\0\0"..., 32) = 32
open("/etc/drirc", O_RDONLY)            = 5
read(5, "<driconf>\n    <device screen=\"0\""..., 4096) = 130
read(5, "", 4096)                       = 0
close(5)                                = 0
open("/root/.drirc", O_RDONLY)          = 5
read(5, "<driconf>\n    <device screen=\"0\""..., 4096) = 130
read(5, "", 4096)                       = 0
close(5)                                = 0
brk(0)                                  = 0x806d000
brk(0x8090000)                          = 0x8090000
open("/etc/ld.so.cache", O_RDONLY)      = 5
fstat64(5, {st_mode=S_IFREG|0644, st_size=113140, ...}) = 0
old_mmap(NULL, 113140, PROT_READ, MAP_PRIVATE, 5, 0) = 0x45de5000
close(5)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/usr/lib/libtxc_dxtn.so", O_RDONLY) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\7\0\000"..., 512) = 512
fstat64(5, {st_mode=S_IFREG|0755, st_size=20306, ...}) = 0
old_mmap(NULL, 19108, PROT_READ|PROT_EXEC, MAP_PRIVATE, 5, 0) = 0x45e01000
old_mmap(0x45e05000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5,
0x3000) = 0x45e05000
close(5)                                = 0
munmap(0x45de5000, 113140)              = 0
mmap2(NULL, 806912, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x45e06000
brk(0)                                  = 0x8090000
brk(0x80b3000)                          = 0x80b3000
brk(0)                                  = 0x80b3000
brk(0x80d7000)                          = 0x80d7000
brk(0)                                  = 0x80d7000
brk(0x80fb000)                          = 0x80fb000
brk(0)                                  = 0x80fb000
brk(0x811e000)                          = 0x811e000
mmap2(NULL, 184320, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0x45ecb000
brk(0)                                  = 0x811e000
brk(0x8145000)                          = 0x8145000
gettimeofday({1099266166, 519011}, NULL) = 0
write(3, "\220\3\6\0\4\0\240\0\'\0\0\0\0\0\0\0\0\0\0\0\1\0\240\0"..., 44) = 44
read(3, "\23\312\35\0\2\0\240\0\2\0\240\0\0\3536\0100\315\246\10"..., 32) = 32
read(3, "\1\0\36\0\0\0\0\0\0\0\0\0@\312\246\10\260i\250\10\0\0\0"..., 32) = 32
write(3, "\200\t\3\0\0\0\0\0\2\0\240\0", 12) = 12
read(3, "\1\0\37\0\1\0\0\0\2\0\0\0#\16\0\0\0\0\0\0,\1,\1\0\0\0\0"..., 32) = 32
read(3, "\0\0\0\0", 4)                  = 4
ioctl(4, 0x4008642a, 0xbffffa78)        = 0
ioctl(4, 0x4008642b, 0xbffffa80)        = 0
write(3, "\200\t\3\0\0\0\0\0\2\0\240\0", 12) = 12
read(3, "\f\354\37\0\2\0\240\0\0\0\0\0,\1,\1\0\0u\10p\315\246\10"..., 32) = 32
read(3, "\1\0 \0\3\0\0\0\2\0\0\0$\16\0\0\0\0\0\0,\1,\1\1\0\0\0\0"..., 32) = 32
read(3, "\0\0\0\0", 4)                  = 4
read(3, "\0\0\0\0,\1,\1", 8)            = 8
ioctl(4, 0x4008642a, 0xbffffa78)        = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x4008642a, 0xbffff938)        = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x4008642b, 0xbffff970)        = 0
ioctl(4, 0x4008642a, 0xbffff3b8)        = 0
ioctl(4, 0xc0286429, 0xbffff3b0)        = 0
ioctl(4, 0x4008642b, 0xbffff3f0)        = 0
ioctl(4, 0x4008642a, 0xbffff458)        = 0
ioctl(4, 0x40106450, 0xbfffd400)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x4008642b, 0xbffff490)        = 0
ioctl(4, 0x4008642a, 0xbffffa78)        = 0
ioctl(4, 0x40106450, 0xbfffda20)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0x4008642b, 0xbffffab0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0x6447, 0)                     = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
gettimeofday({1099266174, 86191}, NULL) = 0
gettimeofday({1099266174, 86256}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x4008642a, 0xbffff938)        = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x4008642b, 0xbffff970)        = 0
ioctl(4, 0x4008642a, 0xbffff458)        = 0
ioctl(4, 0x40106450, 0xbfffd400)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0x4008642b, 0xbffffab0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0x6447, 0)                     = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
gettimeofday({1099266174, 87593}, NULL) = 0
gettimeofday({1099266174, 87657}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x4008642a, 0xbffff938)        = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x4008642b, 0xbffff970)        = 0
ioctl(4, 0x4008642a, 0xbffff3d8)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbfffd400)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x4008642b, 0xbffff490)        = 0
ioctl(4, 0x4008642a, 0xbffffa78)        = 0
ioctl(4, 0x40106450, 0xbfffda20)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0x4008642b, 0xbffffab0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0x6447, 0)                     = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
gettimeofday({1099266174, 89213}, NULL) = 0
gettimeofday({1099266174, 89276}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x4008642a, 0xbffff938)        = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x4008642b, 0xbffff970)        = 0
ioctl(4, 0x4008642a, 0xbffff458)        = 0
ioctl(4, 0x40106450, 0xbfffd400)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0x4008642b, 0xbffffab0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0x6447, 0)                     = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
gettimeofday({1099266174, 90634}, NULL) = 0
gettimeofday({1099266174, 90697}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x4008642a, 0xbffff938)        = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x4008642b, 0xbffff970)        = 0
ioctl(4, 0x4008642a, 0xbffff3d8)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbfffd400)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x4008642b, 0xbffff490)        = 0
ioctl(4, 0x4008642a, 0xbffffa78)        = 0
ioctl(4, 0x40106450, 0xbfffda20)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0x4008642b, 0xbffffab0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0x6447, 0)                     = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
gettimeofday({1099266174, 92253}, NULL) = 0
gettimeofday({1099266174, 92316}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x4008642a, 0xbffff938)        = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x4008642b, 0xbffff970)        = 0
ioctl(4, 0x4008642a, 0xbffff458)        = 0
ioctl(4, 0x40106450, 0xbfffd400)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0x4008642b, 0xbffffab0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x4008642a, 0xbffffab8)        = 0
ioctl(4, 0x6447, 0)                     = 0
ioctl(4, 0x4008642b, 0xbffffaf0)        = 0
gettimeofday({1099266174, 93644}, NULL) = 0
gettimeofday({1099266174, 93707}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x4008642a, 0xbffff938)        = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 94397}, NULL) = 0
gettimeofday({1099266174, 94416}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 94967}, NULL) = 0
gettimeofday({1099266174, 94985}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 95509}, NULL) = 0
gettimeofday({1099266174, 95527}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 96271}, NULL) = 0
gettimeofday({1099266174, 96289}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 96952}, NULL) = 0
gettimeofday({1099266174, 96971}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 97666}, NULL) = 0
gettimeofday({1099266174, 97684}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 98379}, NULL) = 0
gettimeofday({1099266174, 98397}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 99050}, NULL) = 0
gettimeofday({1099266174, 99069}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 99806}, NULL) = 0
gettimeofday({1099266174, 99824}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 100490}, NULL) = 0
gettimeofday({1099266174, 100508}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 101130}, NULL) = 0
gettimeofday({1099266174, 101148}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 101880}, NULL) = 0
gettimeofday({1099266174, 101898}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 102543}, NULL) = 0
gettimeofday({1099266174, 102561}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 103308}, NULL) = 0
gettimeofday({1099266174, 103327}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 103951}, NULL) = 0
gettimeofday({1099266174, 103969}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 104782}, NULL) = 0
gettimeofday({1099266174, 104800}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 105365}, NULL) = 0
gettimeofday({1099266174, 105384}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 106151}, NULL) = 0
gettimeofday({1099266174, 106169}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 106845}, NULL) = 0
gettimeofday({1099266174, 106864}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 107494}, NULL) = 0
gettimeofday({1099266174, 107512}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 108226}, NULL) = 0
gettimeofday({1099266174, 108245}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 109708}, NULL) = 0
gettimeofday({1099266174, 109726}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 110048}, NULL) = 0
gettimeofday({1099266174, 110066}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 110566}, NULL) = 0
gettimeofday({1099266174, 110584}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0xc0286429, 0xbffff3d0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = 0
ioctl(4, 0x4008642a, 0xbffffa88)        = 0
ioctl(4, 0xc0046456, 0xbffffaec)        = 0
ioctl(4, 0xc010643a, 0xbffffad0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1099266174, 111192}, NULL) = 0
gettimeofday({1099266174, 111210}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0xc0086451, 0xbffff9d8)        = 0
ioctl(4, 0x40106450, 0xbfffd8e0)        = 0
ioctl(4, 0x40106450, 0xbffff960)        = 0
ioctl(4, 0x40186448, 0xbffffad0)        = 0
ioctl(4, 0x40106450, 0xbffff480)        = 0
ioctl(4, 0x40106450, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffac0)        = 0
ioctl(4, 0x40046457, 0x8057600)         = -1 EBUSY (Device or resource busy)
write(2, "radeonWaitIrq: drmRadeonIrqWait:"..., 37) = 37
exit_group(1)                           = ?

It works with versions before 20040925
Comment 1 Roland Scheidegger 2004-11-03 17:40:17 UTC
does it also lockup if you disable tcl (tcl_mode=0)?
What xorg version are you using?
Comment 2 Mateusz 2004-11-04 01:33:36 UTC
I am currently using mesa cvs from before 20040925 and it's working but lack
something I guess, some software dont render textures correctly
(Scorched3d,NeverWinter).
I builded latest CVS and replaced that radeon_dri.so with the new one.
Did ldconfig then restarted and with env tcl_mode=0 still get everything locking
up. 
My Xorg is also from CVS (2004-10-31).
I tried with cvs's drm and then 2.6.8 kernel's one, the same effect.

----------------------------------------------------------------------
There is also something strange for me that I dont understand, I used the same
linux-dri-x86 config for both Mesa compilations and I get binary file sizes that
differ in 6mb, what is more the new one is that smaller.

The buggy one from latest CVS
-rwxr-xr-x  1 root root 15M 2004-11-04 09:02
/usr/X11R6/lib/modules/dri/radeon_dri.so

and the one from old Mesa is
-rwxr-xr-x  1 mateusz mateusz 21M 2004-11-01 01:02 OLD-Mesa/Mesa/lib/radeon_dri.so

# Configuration for linux-dri-x86
include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-x86
PIC_FLAGS =
ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
ASM_SOURCES = $(X86_SOURCES)
DRM_SOURCE_PATH = /home/mateusz/DRI/drm
SRD_DIRS = mesa
DIR_DIRS = dri_client radeon r200 tdfx
OPT_FLAGS = -O3 -march=athlon -pipe -Wall -fomit-frame-pointer

all other configs are the same size for both Mesa versions.
Comment 3 Andy Furniss 2004-11-06 11:51:36 UTC
(In reply to comment #2)
> I am currently using mesa cvs from before 20040925 and it's working but lack
> something I guess, some software dont render textures correctly
> (Scorched3d,NeverWinter).
> I builded latest CVS and replaced that radeon_dri.so with the new one.
> Did ldconfig then restarted and with env tcl_mode=0 still get everything locking
> up. 
> My Xorg is also from CVS (2004-10-31).
> I tried with cvs's drm and then 2.6.8 kernel's one, the same effect.
> 
> ----------------------------------------------------------------------
> There is also something strange for me that I dont understand, I used the same
> linux-dri-x86 config for both Mesa compilations and I get binary file sizes that
> differ in 6mb, what is more the new one is that smaller.
> 
> The buggy one from latest CVS
> -rwxr-xr-x  1 root root 15M 2004-11-04 09:02
> /usr/X11R6/lib/modules/dri/radeon_dri.so
> 
> and the one from old Mesa is
> -rwxr-xr-x  1 mateusz mateusz 21M 2004-11-01 01:02 OLD-Mesa/Mesa/lib/radeon_dri.so
> 
> # Configuration for linux-dri-x86
> include $(TOP)/configs/linux-dri
> CONFIG_NAME = linux-dri-x86
> PIC_FLAGS =
> ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
> ASM_SOURCES = $(X86_SOURCES)
> DRM_SOURCE_PATH = /home/mateusz/DRI/drm
> SRD_DIRS = mesa
> DIR_DIRS = dri_client radeon r200 tdfx
> OPT_FLAGS = -O3 -march=athlon -pipe -Wall -fomit-frame-pointer
> 
> all other configs are the same size for both Mesa versions.
> 

(In reply to comment #2)
> I am currently using mesa cvs from before 20040925 and it's working but lack
> something I guess, some software dont render textures correctly
> (Scorched3d,NeverWinter).
> I builded latest CVS and replaced that radeon_dri.so with the new one.
> Did ldconfig then restarted and with env tcl_mode=0 still get everything locking
> up. 
> My Xorg is also from CVS (2004-10-31).
> I tried with cvs's drm and then 2.6.8 kernel's one, the same effect.
> 
> ----------------------------------------------------------------------
> There is also something strange for me that I dont understand, I used the same
> linux-dri-x86 config for both Mesa compilations and I get binary file sizes that
> differ in 6mb, what is more the new one is that smaller.
> 
> The buggy one from latest CVS
> -rwxr-xr-x  1 root root 15M 2004-11-04 09:02
> /usr/X11R6/lib/modules/dri/radeon_dri.so
> 
> and the one from old Mesa is
> -rwxr-xr-x  1 mateusz mateusz 21M 2004-11-01 01:02 OLD-Mesa/Mesa/lib/radeon_dri.so
> 
> # Configuration for linux-dri-x86
> include $(TOP)/configs/linux-dri
> CONFIG_NAME = linux-dri-x86
> PIC_FLAGS =
> ASM_FLAGS = -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM
> ASM_SOURCES = $(X86_SOURCES)
> DRM_SOURCE_PATH = /home/mateusz/DRI/drm
> SRD_DIRS = mesa
> DIR_DIRS = dri_client radeon r200 tdfx
> OPT_FLAGS = -O3 -march=athlon -pipe -Wall -fomit-frame-pointer
> 
> all other configs are the same size for both Mesa versions.
> 

Just a me too post really. 

I tried to get my radeon 7500 working a couple of days ago and hit the same sort
of problems.

gears hung as soon as it started - No keyboard but could SSH into box which hung
as I killed gears.

ET/wolfenstein lock box totally as soon as they get to 3D bits.

Q3 demo will last a few seconds rendering.

geartrain is OK until I rotate it.

For some reason marbleblast demo and fire work OK.

Andy.

Comment 4 Roland Scheidegger 2004-11-07 17:43:15 UTC
I've tried newest Mesa CVS on a 7200sdr and can confirm some issues. If I start
glxgears as the first OpenGL app, it instantly locks up. However, if I start
QuakeIII first, it runs, and glxgears will run just fine later on. That's even
true if I leave X, rmmod radeon and restart X, glxgears works, only after a
reboot it will lock up again. Looks to me like some state never gets initialized.
Comment 5 Roland Scheidegger 2004-11-12 10:37:57 UTC
A potential fix has been checked in, could you please retry with newest CVS?
Comment 6 Andreas Stenglein 2004-11-14 10:52:28 UTC
I tried and it still locks up.
Comment 7 Mateusz 2004-11-28 12:24:21 UTC
(In reply to comment #6)
> I tried and it still locks up.

Yes it still locks up and from strace I can see it loops forever.
But somewhing has changed now because previously I got
gettimeofday({1099555005, 69646}, NULL) = 0
gettimeofday({1099555005, 69665}, {4294967236, 0}) = 0
beatween ioctl() calls.. in strace.log

Now the strace looks like
ioctl(4, 0x4008642a, 0xbffffa48)        = 0
write(3, "\200\t\3\0\0\0\0\0\2\0`\0", 12) = 12
read(3, "\f\n\37\0\2\0`\0\0\0\0\0,\1,\1\0\0t\10\250 w\10\210\363"..., 32) = 32
read(3, "\1\0 \0\5\0\0\0\0\0\0\0\1\1\0\0\0\0\0\0,\1,\1\1\0\0\0\0"..., 32) = 32
read(3, "\1\0\0\0", 4)                  = 4
read(3, "\0\0\0\0,\1,\1", 8)            = 8
read(3, "\0\0\0\0,\1,\1", 8)            = 8
ioctl(4, 0x4008642a, 0xbffffa48)        = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x40106450, 0xbffff8f0)        = 0
ioctl(4, 0xc0086451, 0xbffff9b8)        = 0
ioctl(4, 0x40106450, 0xbffff930)        = 0
ioctl(4, 0x40186448, 0xbffffab0)        = 0
ioctl(4, 0xc0286429, 0xbffff390)        = 0
ioctl(4, 0x40106450, 0xbfffd3f0)        = 0
ioctl(4, 0x40106450, 0xbffff450)        = 0
ioctl(4, 0x40106450, 0xbffffa70)        = 0
ioctl(4, 0xc0086451, 0xbffffaa0)        = 0
ioctl(4, 0xc010643a, 0xbffffab0)        = 0
ioctl(4, 0x6447, 0)                     = 0
gettimeofday({1101672442, 574975}, NULL) = 0
gettimeofday({1101672442, 575002}, {4294967236, 0}) = 0
ioctl(3, FIONREAD, [0])                 = 0
ioctl(4, 0x40106450, 0xbffff8f0)        = 0
ioctl(4, 0xc0086451, 0xbffff9b8)        = 0
ioctl(4, 0x40106450, 0xbffff930)        = 0
ioctl(4, 0x40186448, 0xbffffab0)        = 0
ioctl(4, 0x40106450, 0xbffff450)        = 0
ioctl(4, 0x40106450, 0xbffffa70)        = 0
ioctl(4, 0xc0086451, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffaa0)        = 0
ioctl(4, 0xc0086451, 0xbffffaa0)        = 0
.... and so on... filling free disk space...

What steps I need to do in order to debug it more precisly ?
Comment 8 Roland Scheidegger 2004-11-29 10:48:10 UTC
(In reply to comment #7)
> > I tried and it still locks up.
> 
> Yes it still locks up and from strace I can see it loops forever.
It's probably trying to getting a free buffer or something, and it will never
get this if the gpu has locked up :(.

> What steps I need to do in order to debug it more precisly ?
You could try enabling debugging in the kernel module and then try to see at
which point the gpu stops to respond (not easy).
I'm really at a loss what's wrong. The problem only seems to affect 7500 cards.
It works just fine with 7200 cards. That's really strange as the difference
between 7500 and 7200 cards is almost zero, apart that the chip is built on a
smaller process (on the top of my head, I can remember that the 7500 has the
display controller of the 7000 (i.e. two heads), was rumoured to have a
different memory controller, and the cards also have asynchronous memory/core
clocks, which were reported to be very problematic (slower and/or lockups) with
7200 cards when people tried that. Oh and the 7500 has a fixed stencil
buffer...). None of those changes should make a difference with regard to the 3d
driver. Unless the asynchronous clock problems weren't actually fixed with the
7500, but require driver workarounds (but it seems strange that the lockups
would now suddenly be triggered by the new emit code imho).
Comment 9 Alex Deucher 2004-11-29 11:00:01 UTC
if you are using xorg cvs or 6.8.x, try:
option "DynamicClocks" "true"
you may also want to try the patch I attached to bug 1912, however, try this
variation (so it gets enabled on RV200 chips):

         case 0: /* Turn everything OFF (ForceON to everything)*/
-            if ( !info->HasCRTC2 ) {
+	    /* some non-mobility VE chips seem to have problems with the method of
+	     * forcing everything on as per below; thus we revert to the old 
+	     * forceON behavior
+	     */
+	    if (((info->ChipFamily == CHIP_FAMILY_RV100) || info->ChipFamily ==
CHIP_FAMILY_RV200) && (!info->IsMobility)) {
+    		if (info->HasCRTC2) {
+        		tmp = INPLL(pScrn, RADEON_SCLK_CNTL);
+        		OUTPLL(RADEON_SCLK_CNTL, ((tmp & ~RADEON_DYN_STOP_LAT_MASK) |
+                                  		RADEON_CP_MAX_DYN_STOP_LAT |
+                                  		RADEON_SCLK_FORCEON_MASK));
+        		if (info->ChipFamily == CHIP_FAMILY_RV200) {
+            			tmp = INPLL(pScrn, RADEON_SCLK_MORE_CNTL);
+            			OUTPLL(RADEON_SCLK_MORE_CNTL, tmp 
+						| RADEON_SCLK_MORE_FORCEON);
+        		}
+    		}
+
+		tmp = INPLL(pScrn, RADEON_MCLK_CNTL);
+	    	OUTPLL(RADEON_MCLK_CNTL, (tmp |
+                               RADEON_FORCEON_MCLKA |
+                               RADEON_FORCEON_MCLKB |
+                               RADEON_FORCEON_YCLKA |
+                               RADEON_FORCEON_YCLKB |
+                               RADEON_FORCEON_MC |
+                               RADEON_FORCEON_AIC));
+
+            } else if ( !info->HasCRTC2 ) {
                 tmp = INPLL(pScrn, RADEON_SCLK_CNTL);
                 tmp |= (RADEON_SCLK_FORCE_CP   | RADEON_SCLK_FORCE_HDP |
 			RADEON_SCLK_FORCE_DISP1 | RADEON_SCLK_FORCE_TOP |
Comment 10 Alex Deucher 2004-11-29 11:01:49 UTC
if you try the patch I suggested, turn either use 
Option "dynamicclocks" "false" 
or remove the option altogether.
Comment 11 Mateusz 2004-11-29 13:36:19 UTC
(In reply to comment #10)
> if you try the patch I suggested, turn either use 
> Option "dynamicclocks" "false" 
> or remove the option altogether.

The Option "dynamicclocks" didnt work, 
I could not compile xorg with the patch cause now there is a bug in xorg's cvs

xftdpy.c: In function `XftDefaultSubstitute':
xftdpy.c:495: error: `FC_RGBA_UNKNOWN' undeclared (first use in this function)
xftdpy.c:495: error: (Each undeclared identifier is reported only once
xftdpy.c:495: error: for each function it appears in.)

If You want to reproduce it follow
http://incubator.vislab.usyd.edu.au/roller/page/Steve/20040909

I am using currently minimal version of xorg
as on http://dri.sourceforge.net/cgi-bin/moin.cgi/Building
and DRM from
cvs -z3 -d:pserver:anonymous@cvs.freedesktop.org:/cvs/dri co drm
on which patch will not apply.

Could You give me directions How to debug kernel module drm ?
Comment 12 Alex Deucher 2004-11-29 13:45:08 UTC
(In reply to comment #11)
> (In reply to comment #10)
> > if you try the patch I suggested, turn either use 
> > Option "dynamicclocks" "false" 
> > or remove the option altogether.
> 
> The Option "dynamicclocks" didnt work, 
> I could not compile xorg with the patch cause now there is a bug in xorg's cvs
> 
> xftdpy.c: In function `XftDefaultSubstitute':
> xftdpy.c:495: error: `FC_RGBA_UNKNOWN' undeclared (first use in this function)
> xftdpy.c:495: error: (Each undeclared identifier is reported only once
> xftdpy.c:495: error: for each function it appears in.)
> 
> If You want to reproduce it follow
> http://incubator.vislab.usyd.edu.au/roller/page/Steve/20040909
> 
> I am using currently minimal version of xorg
> as on http://dri.sourceforge.net/cgi-bin/moin.cgi/Building
> and DRM from
> cvs -z3 -d:pserver:anonymous@cvs.freedesktop.org:/cvs/dri co drm
> on which patch will not apply.

the patch only applies to the DDX in xorg cvs.  It should be pretty easy to
apply it manually.  another alternative is simply to comment out the call to
RADEONSetDynamicClock() in radeon_driver.c:

#if 0
    if (xf86ReturnOptValBool(info->Options, OPTION_DYNAMIC_PM, FALSE)) {
	RADEONSetDynamicClock(pScrn, 1);
    } else {
	RADEONSetDynamicClock(pScrn, 0);
    }
#endif

> 
> Could You give me directions How to debug kernel module drm ?
> 

Comment 13 Mateusz 2004-11-30 07:38:33 UTC
(In reply to comment #12)
> the patch only applies to the DDX in xorg cvs.  It should be pretty easy to
> apply it manually.  another alternative is simply to comment out the call to
> RADEONSetDynamicClock() in radeon_driver.c:
> 
> #if 0
>     if (xf86ReturnOptValBool(info->Options, OPTION_DYNAMIC_PM, FALSE)) {
> 	RADEONSetDynamicClock(pScrn, 1);
>     } else {
> 	RADEONSetDynamicClock(pScrn, 0);
>     }
> #endif

With the patch, now direct rendering works fine, thx
Comment 14 Adam Jackson 2009-08-24 12:22:50 UTC
Mass version move, cvs -> git

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.