Erlang/OTP R10B-8 has been released

Mikael Pettersson mikpe@REDACTED
Thu Oct 27 15:01:57 CEST 2005


Claes Wikstrom writes:
 > 
 > Bugreport:
 > 
 > # uname -a
 > Linux harr 2.6.11-gentoo-r5 #2 Wed Apr 27 00:08:44 CEST 2005 i686 Intel(R) Celeron(R) CPU 2.40GHz GenuineIntel GNU/Linux
 > #  cat /proc/cpuinfo
 > processor       : 0
 > vendor_id       : GenuineIntel
 > cpu family      : 15
 > model           : 3
 > model name      : Intel(R) Celeron(R) CPU 2.40GHz
 > .........
 > 
 > Plain configure, no extra flags
 > 
 > I get:
 > 
 > # erlgdb
 > 
 > ....
 > 
 > (gdb) bt
 > #0  0xb7e0ac06 in __pthread_sighandler () from /lib/libpthread.so.0
 > #1  <signal handler called>
 > #2  0xb7f03671 in fts_children () from /lib/libc.so.6
 > #3  0x080ecac7 in check_io (do_wait=1) at sys/unix/sys.c:2506
 > #4  0x080ed57b in erl_sys_schedule (runnable=0) at sys/unix/sys.c:3366
 > #5  0x0809cb8a in schedule (p=0x0, calls=0) at beam/erl_process.c:477
 > #6  0x080d3f47 in process_main () at beam/beam_emu.c:1148
 > #7  0x0807639f in erl_start (argc=4, argv=0x0) at beam/erl_init.c:902
 > #8  0x08065d8b in main (argc=-4, argv=0xfffffffc) at sys/unix/erl_main.c:28
 > (gdb) quit
 > 
 > 
 > 
 > where the debug script is:
 > 
 > 
 > # cat ~/bin/erlgdb
 > #!/bin/sh
 > 
 > BREAK_POINT=main
 > 
 > gdb_exec=/tmp/erlgdb.$$
 > 
 > export ROOTDIR=/usr/local/src/otp_src_R10B-8
 > export BINDIR=${ROOTDIR}/bin/i686-pc-linux-gnu
 > # to find inet_gethost
 > export PATH=${BINDIR}:${PATH}
 > 
 > echo "echo ERLGDB RUNNING\\n" > $gdb_exec
 > echo "break $BREAK_POINT" >> $gdb_exec
 > echo "directory $ROOTDIR/erts/emulator/beam"  >> $gdb_exec
 > echo "run -- -root $ROOTDIR"  >> $gdb_exec
 > gdb -x $gdb_exec ${BINDIR}/beam
 > rm $gdb_exec
 > 
 > 
 > Rebuilding with:
 > 
 > # ./configure --disable-hipe
 > 
 > Fixes the problem (or ehhum, doesn't coredump)
 > What the exact problem is, I have no idea.

Here we go again. There have been some reports from Gentoo and Ubuntu
users that a HiPE-enabled system on x86 breaks for them. However:
1) There's no breakage on RedHat/Fedora-based systems. I just tried
   your gdb thing on FC4/x86 and everything works just fine.
2) We (the HiPE group) don't run Gentoo/Ubuntu/${random distro} so we
   can't debug issues on them.
3) So far no Gentoo/Ubuntu user has volunteered to debug their systems.

So I'm getting to the point where I'm considering changing erts/configure.in
to not auto-enable HiPE/x86 except on Fedora and Solaris.

For the record, the problem is most likely in HiPE/x86' code to
override certain libc signal setup procedures in order to enforce
the use of SIGALTSTACK. This is very delicate libc-dependent code.
See erts/emulator/hipe/hipe_x86_signal.c for details.

/Mikael



More information about the erlang-questions mailing list