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