Comment 6 for bug 6769

Revision history for this message
In , Javier Fernández-Sanguino (jfs) wrote : Further information related to testing (in sparc)

I have been testing this issue further in a unstable chroot (at vore). This
bug reproduces in gcc-2.95, gcc-3.2 and gcc-3.3 in unstable. Running it
through a debugger:

------------------------------------------------------------------------
GNU gdb 6.1-debian
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
(...)
This GDB was configured as "sparc-linux"...Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run 1
Starting program: /home/jfs/john/john-1.6/src/bench 1
Benchmarking: Standard DES [24/32 128K]...
Program received signal SIGSEGV, Segmentation fault.
0x7005cf98 in __errno_location () from /lib/libc.so.6
(gdb) bt
#0 0x7005cf98 in __errno_location () from /lib/libc.so.6
#1 0x70072dc0 in __libc_sigaction () from /lib/libc.so.6
#2 0x70072ff4 in sigaction () from /lib/libc.so.6
#3 0x70072ce0 in ssignal () from /lib/libc.so.6
#4 0x0001aba0 in benchmark_format (format=0x2e040, salts=256,
    results=0xeffffcb8) at bench.c:100
#5 0x0001af9c in main (argc=1, argv=0x32400) at best.c:53
------------------------------------------------------------------------

Bench.c (line 100) just does

        signal(SIGALRM, bench_handle_timer);

If the signal call is removed it will not segfault (but will not run
properly either):

Benchmarking: Standard DES [24/32 128K]... Alarm clock

Christian hast said (in IRC) that it seems that the devel branch will not
compile properly on Sparc. I have succesfully tested a built on Solaris
over Sparc, so there seems to be an issue with the linux-specific code. I'm
not sure where the default resides (maybe libc6?). I would suggest that
this bug was reassigned to libc6 and that sparc support for john was
dropped (but this bug left open) until the issue is fixed.

Regards

Javier