1) testFrameAdjustedAddress(frysk.rt.TestFrameDebugInfo)junit.framework.AssertionFailedError: fourth (test coming soon to cvs)
Test program: #include <stdlib.h> void fourth(){ exit(1); } void third(){ fourth(); } void second(){ third(); } void first(){ second(); } int main(){ first (); return 0; }
Stack trace: #0 0x00b19402 in __kernel_vsyscall () #1 0x0051efc4 in __GI__exit () #2 0x08048374 in third () #3 0x080483a9 in third () #4 0x080483c6 in second () #5 0x080483e3 in first () #6 0x08048410 in main () #7 0x004a6f2c in __libc_start_main () #8 0x080482f1 in _start () Frame #2 is incorrect. It should be fourth
Test is now in cvs Index: frysk-core/frysk/pkglibdir/ChangeLog 2007-06-20 Sami Wagiaalla <swagiaal@redhat.com> * funit-stacks-exit.c: New. Index: frysk-core/frysk/rt/ChangeLog 2007-06-20 Sami Wagiaalla <swagiaal@redhat.com> * TestFrameDebugInfo.java (testFrameAdjustedAddress): New test.
Also on a 32 bit machine: [swagiaal@towns frysk-core]$ ./frysk/bindir/fstack $$ Task #505 #0 0x0051d402 in __kernel_vsyscall () from [vdso] #1 0x00337d69 in __waitpid_nocancel () from /lib/libc-2.6.so #2 0x100f41dd in [unknown] from Unknown #3 0x0807bfa8 in wait_for () from /bin/bash #4 0x0806eedd in execute_command_internal () from /bin/bash #5 0x0806f923 in execute_command () from /bin/bash #6 0x0805ef61 in reader_loop () from /bin/bash #7 0x0805ea70 in main () from /bin/bash #8 0x002bdf70 in __libc_start_main () from /lib/libc-2.6.so #9 0x0805c6c1 in _start () from /bin/bash [swagiaal@towns frysk-core]$ pstack $$ #0 0x0051d402 in __kernel_vsyscall () #1 0x00337d73 in __waitpid_nocancel () from /lib/libc.so.6 #2 0x0807a12d in ?? () #3 0x0807bfa8 in wait_for () #4 0x0806eedd in execute_command_internal () #5 0x0806f923 in execute_command () #6 0x0805ef61 in reader_loop () #7 0x0805ea70 in main () The addresses are different between the two stack back traces.