Open
Description
openedon Aug 27, 2018
While debugging a GC error, Kiran and I encountered the scenario that realloc
throws internal error which triggers jl_critical_error
, which does another malloc, which then deadlocks internally.
The error we saw from realloc
was malloc_consolidate(): invalid chunk size
.
Example backtrace:
#0 0x00007f385643d04b in __lll_lock_wait_private () from /usr/lib/libc.so.6
#1 0x00007f38563ba960 in calloc () from /usr/lib/libc.so.6
#2 0x00007f38566a872b in jl_getFunctionInfo (
frames_out=frames_out@entry=0x55d4d8518be0,
pointer=pointer@entry=139879941324158, skipC=skipC@entry=0,
noInline=noInline@entry=0)
at /home/vchuravy/src/julia/src/debuginfo.cpp:1183
#3 0x00007f385660eafc in jl_gdblookup (ip=139879941324158)
at /home/vchuravy/src/julia/src/stackwalk.c:450
#4 0x00007f38566200a0 in jl_critical_error (bt_size=<optimized out>,
bt_data=<optimized out>, context=0x55d4d8518d00, sig=6)
at /home/vchuravy/src/julia/src/signal-handling.c:236
#5 sigdie_handler (sig=6, info=<optimized out>, context=0x55d4d8518d00)
at /home/vchuravy/src/julia/src/signals-unix.c:201
#6 <signal handler called>
#7 0x00007f385636bd7f in raise () from /usr/lib/libc.so.6
#8 0x00007f3856356672 in abort () from /usr/lib/libc.so.6
#9 0x00007f38563ae878 in __libc_message () from /usr/lib/libc.so.6
#10 0x00007f38563b518a in malloc_printerr () from /usr/lib/libc.so.6
#11 0x00007f38563b548a in malloc_consolidate () from /usr/lib/libc.so.6
#12 0x00007f38563b7f58 in _int_malloc () from /usr/lib/libc.so.6
#13 0x00007f38563b9135 in _int_realloc () from /usr/lib/libc.so.6
#14 0x00007f38563ba4cb in realloc () from /usr/lib/libc.so.6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment