[Varnish] #1564: segfault in jemalloc_linux.c
Varnish
varnish-bugs at varnish-cache.org
Thu Jul 31 17:22:33 CEST 2014
#1564: segfault in jemalloc_linux.c
----------------------+----------------------
Reporter: dcarlier | Type: defect
Status: new | Priority: low
Milestone: | Component: varnishd
Version: unknown | Severity: major
Keywords: |
----------------------+----------------------
warning: Could not load shared library symbols for ./vcl.A9lWNYFW.so.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/opt/local/sbin/varnishd -P /var/run/varnishd.pid
-a :80 -T localhost:6082 -f /'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x000000000046de5b in arena_dalloc_small (arena=0x7f9f74000020,
chunk=0x7f9f74000000, ptr=0x7f9f740008c0, mapelm=0x7f9f74000020) at
jemalloc_linux.c:3687
3687 jemalloc_linux.c: No such file or directory.
(gdb) bt
#0 0x000000000046de5b in arena_dalloc_small (arena=0x7f9f74000020,
chunk=0x7f9f74000000, ptr=0x7f9f740008c0, mapelm=0x7f9f74000020) at
jemalloc_linux.c:3687
#1 0x000000000046e1d5 in arena_dalloc (arena=0x7f9f74000020,
chunk=0x7f9f74000000, ptr=0x7f9f740008c0) at jemalloc_linux.c:3939
#2 0x000000000046e244 in idalloc (ptr=0x7f9f740008c0) at
jemalloc_linux.c:3957
#3 0x000000000047050a in free (ptr=0x7f9f740008c0) at
jemalloc_linux.c:5586
#4 0x00007f9fe9b58fb9 in __GI__dl_deallocate_tls
(tcb=tcb at entry=0x7f9f9d9fe700, dealloc_tcb=dealloc_tcb at entry=false) at dl-
tls.c:482
#5 0x00007f9fe898b027 in __free_stacks (limit=limit at entry=41943040) at
allocatestack.c:282
#6 0x00007f9fe898b13f in queue_stack (stack=0x47050a <free+31>) at
allocatestack.c:310
#7 __deallocate_stack (pd=pd at entry=0x7f9f9a1f7700) at allocatestack.c:771
#8 0x00007f9fe898c275 in __free_tcb (pd=0x7f9f9a1f7700) at
pthread_create.c:226
#9 start_thread (arg=0x7f9f9a1f7700) at pthread_create.c:432
#10 0x00007f9fe86b930d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:111
(gdb) quit
To make it workable I added this :
3686
- assert(run->magic == ARENA_RUN_MAGIC);
+ if (run == NULL || run->bin == NULL)
+ return;
+ assert(run->magic == ARENA_RUN_MAGIC);
Not sure it addresses really the issue but it went really missy without.
--
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1564>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator
More information about the varnish-bugs
mailing list