On Mon, 09 May 2005 21:44:58 +1200, Adrian Harvey wrote:
If I try to GDB wine I get all sorts of ugly errors
Try an strace in "follow forks mode". Does that help?
thanks -mike
Ok, here goes:
$ WINEDEBUG=+relay strace -f wine execve("/usr/local/bin/wine", ["wine"], [/* 34 vars */]) = 0 [ Process PID=7877 runs in 32 bit mode. ] uname({sys="Linux", node="orac", ...}) = 0 brk(0) = 0x804a000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat64(0x3, 0xffffce38) = 0 old_mmap(0x1e7c500000000, 8589934593, PROT_READ|PROT_WRITE, 0xf /* MAP_??? */|MAP_FIXED|MAP_ANONYMOUS|MAP_NORESERVE|MAP_POPULATE| MAP_NONBLOCK|MAP_GROWSDOWN|MAP_DENYWRITE|MAP_EXECUTABLE|MAP_LOCKED| 0xfffe06c0, 770, 0x2075c00000000) = 0x55555000 close(3) = 0 open("/usr/local/lib/libwine.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\360\31"..., 512) = 512 fstat64(0x3, 0xffffcecc) = 0 old_mmap(0x100000000000, 146028888067, PROT_READ|PROT_WRITE|PROT_EXEC| PROT_GROWSDOWN|PROT_GROWSUP|0xfcfffff8, 0x4 /* MAP_??? */|MAP_FIXED| MAP_ANONYMOUS|MAP_GROWSDOWN|MAP_DENYWRITE|MAP_EXECUTABLE|0x560680, 5645560, 0x80055b415) = 0x55574000 old_mmap(0x1888000000000, 8804682956805, PROT_READ|PROT_WRITE, 0x5 /* MAP_??? */|MAP_FIXED|MAP_POPULATE|MAP_NONBLOCK|MAP_EXECUTABLE| MAP_LOCKED|0x540400, 28, 0x5543b5ffffce10) = 0x55575000 old_mmap(0x10005557b000, 8873402433539, PROT_READ|PROT_WRITE, 0x5 /* MAP_??? */|MAP_FIXED|MAP_POPULATE|MAP_NONBLOCK|MAP_EXECUTABLE| MAP_LOCKED|0x540400, 28, 0x5543b5ffffce10) = 0x5557b000 old_mmap(0x118805557c000, 214748364803, PROT_READ|PROT_WRITE|PROT_EXEC| PROT_GROWSDOWN|PROT_GROWSUP|0xfcfffff8, 0x5 /* MAP_??? */|MAP_FIXED| MAP_POPULATE|MAP_NONBLOCK|MAP_EXECUTABLE|MAP_LOCKED|0x540400, 28, 0x5543b5ffffce10) = 0x5557c000 close(3) = 0 open("/lib/tls/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\0\20\10l"..., 512) = 512 fstat64(0x3, 0xffffceb0) = 0 old_mmap(0x111dc006bc000, 8804682956805, PROT_READ|PROT_WRITE, MAP_FILE, 0, 0) = 0x6bc000 old_mmap(0x2000006ca000, 8873402433539, PROT_READ|PROT_WRITE, MAP_FILE, 0, 0) = 0x6ca000 old_mmap(0x11dc006cc000, 214748364803, PROT_READ|PROT_WRITE|PROT_EXEC| PROT_GROWSDOWN|PROT_GROWSUP|0xfcfffff8, MAP_FILE, 0, 0) = 0x6cc000 close(3) = 0 open("/lib/tls/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\20\237"..., 512) = 512 fstat64(0x3, 0xffffce94) = 0 old_mmap(0x129c9c00565000, 8804682956805, PROT_READ|PROT_WRITE, MAP_FILE, 0, 0x6cb12400000000) = 0x565000 mprotect(0x688000, 27804, PROT_NONE) = 0 old_mmap(0x400000689000, 8873402433539, PROT_READ|PROT_WRITE, MAP_FILE, 0, 0x6cb12400000000) = 0x689000 old_mmap(0x1c9c0068d000, 214748364803, PROT_READ|PROT_WRITE|PROT_EXEC| PROT_GROWSDOWN|PROT_GROWSUP|0xfcfffff8, MAP_FILE, 0, 0x6cb12400000000) = 0x68d000 close(3) = 0 open("/lib/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\260\33"..., 512) = 512 fstat64(0x3, 0xffffcdf8) = 0 old_mmap(0x306400691000, 8804682956805, PROT_READ|PROT_WRITE, MAP_FILE, 0, 0) = 0x691000 old_mmap(0x200000693000, 8873402433539, PROT_READ|PROT_WRITE, MAP_FILE, 0, 0) = 0x693000 close(3) = 0 old_mmap(0x100000000000, 146028888067, PROT_READ|PROT_WRITE|PROT_EXEC| PROT_GROWSDOWN|PROT_GROWSUP|0xfcfffff8, 0x4 /* MAP_??? */|MAP_FIXED| MAP_ANONYMOUS|MAP_GROWSDOWN|MAP_DENYWRITE|MAP_EXECUTABLE|0x560680, 512, 0x80055b415) = 0x5558e000 mprotect(0x693000, 4096, PROT_READ) = 0 mprotect(0x689000, 8192, PROT_READ) = 0 mprotect(0x6ca000, 4096, PROT_READ) = 0 mprotect(0x561000, 4096, PROT_READ) = 0 set_thread_area(0xffffd644) = 0 munmap(0x55555000, 124869) = 0 set_tid_address(0x5558e928) = 7877 rt_sigaction(SIGRTMIN, {0x4006c0380, [], 0x56d6f8}, NULL, 0) = 0 rt_sigaction(SIGRT_1, {0x10000004006c03f0, [], 0x56d6f8}, NULL, 0) = 0 rt_sigprocmask(SIG_UNBLOCK, [], NULL, 0) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=-4284481536, rlim_max=0}) = 0 Bus error $ 0009:Call kernel32.__wine_kernel_init() ret=55727d9e
Well, I got some output at least! Never used strace before, but it looks kinda like a +relay trace for the kernel :-) Not sure what to make of the results, and I won't have time to look into it further til tomorrow...
I also happened to be tailing the syslog (I was looking at something completely different) and I noticed that the following was written:
May 11 22:50:55 orac kernel: strace[7749] trap stack segment rip:410c86 rsp:800000007b20 error:0 May 11 22:50:55 orac kernel: wine-preloader[7750]: segfault at 000000005575b624 rip 000000005575b624 rsp 00000000ffffc824 error 15
I doubt it's much use, but I thought any information might help here....
Adrian