[erlang-questions] segfault erts-5.10.4 (R16B03-1)

Ahmed Omar <>
Wed Sep 9 14:19:16 CEST 2015


Hi Lukas,

You were right, there was a mismatch between beam.smp on development and
production (unfortunately, different build servers...)

I ran the session now with the right beam.smp

###
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `/var/lib/ejabberd/erts-5.10.4/bin/beam.smp -K true
-A 128 -P 2500000 -Q 500000'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x000000000044d299 in bf_get_free_block ()
[Current thread is 1 (Thread 0x7fe077fbc700 (LWP 24141))]
(gdb) bt full
#0  0x000000000044d299 in bf_get_free_block ()
No symbol table info available.
#1  0x0000000000442fa6 in mbc_alloc ()
No symbol table info available.
#2  0x0000000000448803 in erts_alcu_alloc_thr_pref ()
No symbol table info available.
#3  0x0000000000509508 in erts_alloc ()
No symbol table info available.
#4  0x00000000005096de in erts_bs_append ()
No symbol table info available.
#5  0x000000000053c1f8 in process_main ()
No symbol table info available.
#6  0x000000000049da8b in sched_thread_func ()
No symbol table info available.
#7  0x00000000005bd146 in thr_wrapper ()
No symbol table info available.
#8  0x00000039a80079d1 in start_thread () from /lib64/libpthread.so.0
No symbol table info available.
#9  0x00000039a78e88fd in clone () from /lib64/libc.so.6
No symbol table info available.
###

I'll keep digging ...

Best Regards,
- Ahmed Omar
http://about.me/spawn.think/

On Tue, Sep 8, 2015 at 4:45 PM, Lukas Larsson <> wrote:

>
>
> On Tue, Sep 8, 2015 at 4:34 PM, Ahmed Omar <> wrote:
>
>> Ok. I guess etp-ports require a live session then?
>> (gdb) etp-ports
>> No ports, since system isn't initialised!
>>
>
>> Is there a way to get port or process number from the information I got
>> from bt ?
>> #2  0x0000000000442fa6 in mbc_realloc (allctr=0x7fe0848807a8, p=0x11f,
>>     size=<optimized out>, busy_pcrr_pp=0x8, alcu_flgs=0)
>>
>>
>>
> All etp macros work on both core files a live nodes. The only time I've
> seen that error from etp-ports is when the VM crashed before the internal
> ports array was initialized.
>
> I'm starting to suspect that there is something wrong with your debugging
> session. The stack trace that you have printed is corrupt, and it cannot
> find a working port table. Make extra sure that you are using the same
> beam.smp to run your gdb session from as generated the core.
>
> Since the stack is corrupt it is not possible to know what called into the
> realloc from the stack trace.
>
> Lukas
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20150909/bb5f2fa3/attachment.html>


More information about the erlang-questions mailing list