https://bugzilla.redhat.com/show_bug.cgi?id=1240487
--- Comment #13 from Filip Andres <filip(a)andresovi.net> ---
Hi,
I have been commenting into the other issue
(
https://bugzilla.redhat.com/show_bug.cgi?id=1221824), sorry :-) Copying the
most important parts here:
* strace -- useless, the VM crashes in userspace
(
https://bugzilla.redhat.com/attachment.cgi?id=1116279)
* gdb stracktrace
(gdb) bt
#0 0x56798d70 in ethr_dw_atomic_cmpxchg () at
../include/internal/i386/atomic.h:177
#1 0x566103ce in ethr_dw_atomic_cmpxchg_nob (xchg=0xf4e0609c, new=0xf4e060a4,
var=0x568688f0 <erts_proc+48>)
at beam/erl_threads.h:1456
#2 erts_atomic64_inc_read_nob (var=0x568688f0 <erts_proc+48>) at
beam/erl_threads.h:1646
#3 step_interval_nob (icp=0x568688f0 <erts_proc+48>) at beam/utils.c:4954
#4 erts_smp_step_interval_nob (icp=icp@entry=0x568688f0 <erts_proc+48>) at
beam/utils.c:5004
#5 0x5671572b in ptab_list_bif_engine (c_p=c_p@entry=0xf6dc0218,
res_accp=res_accp@entry=0xf4e06178,
mbp=mbp@entry=0xf1f80a88) at beam/erl_ptab.c:927
#6 0x56716a5d in erts_ptab_list (c_p=c_p@entry=0xf6dc0218, ptab=0x568688c0
<erts_proc>) at beam/erl_ptab.c:766
#7 0x5661be76 in processes_0 (A__p=0xf6dc0218, BIF__ARGS=0xf7483100) at
beam/bif.c:3841
#8 0x5659978b in process_main () at beam/beam_emu.c:3690
#9 0x56638784 in sched_thread_func (vesdp=0xf6087dc0) at
beam/erl_process.c:8021
#10 0x567a19cc in thr_wrapper (vtwd=0xffffd1b4) at pthread/ethread.c:114
#11 0xf7f164be in start_thread (arg=0xf4e06b40) at pthread_create.c:333
#12 0xf7e2a3fe in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:114
* the problem seems to be triggered by the i686 build using the -mtune=atom
flag, I tried the following change and the resulting binary doesn't have the
same problem:
%ifarch %{ix86}
%global optflags -mtune=generic
%endif
Build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=12621253
Now the erlang:processes() command executes successfully:
$ mock -r fedora-rawhide-i386 --no-clean --shell
INFO: mock.py version 1.2.14 starting (python version = 3.4.2)...
Start: init plugins
INFO: selinux enabled
Finish: init plugins
Start: run
Start: chroot init
INFO: calling preinit hooks
INFO: enabled root cache
INFO: enabled dnf cache
Start: cleaning dnf metadata
Finish: cleaning dnf metadata
INFO: enabled ccache
Finish: chroot init
Start: shell
<mock-chroot>sh-4.3# erl
Erlang/OTP 18 [erts-7.2.1] [source] [smp:4:4] [async-threads:10] [hipe]
[kernel-poll:false]
Eshell V7.2.1 (abort with ^G)
1> erlang:processes().
[<0.0.0>,<0.3.0>,<0.6.0>,<0.7.0>,<0.9.0>,<0.10.0>,<0.11.0>,
<0.12.0>,<0.14.0>,<0.15.0>,<0.16.0>,<0.17.0>,<0.18.0>,
<0.20.0>,<0.21.0>,<0.22.0>,<0.23.0>,<0.24.0>,<0.25.0>,
<0.26.0>,<0.27.0>,<0.28.0>,<0.29.0>,<0.30.0>,<0.34.0>]
2>
Resume:
There seem to be an error in the fallback implementation of
ethr_dw_atomic_cmpxchg. I'm not sure whether these binaries would run on an
Atom processor though (and I don't have means to test it).
I guess I may ask in the erlang-bugs mailing list but I would let it to you to
decide if building for generic processor (instead of Atom) is a viable
workaround or not.
--
You are receiving this mail because:
You are on the CC list for the bug.