[Varnish] #1564: segfault in jemalloc_linux.c
Varnish
varnish-bugs at varnish-cache.org
Thu Jul 31 22:11:41 CEST 2014
#1564: segfault in jemalloc_linux.c
----------------------+----------------------
Reporter: dcarlier | Owner:
Type: defect | Status: closed
Priority: low | Milestone:
Component: varnishd | Version: unknown
Severity: major | Resolution: invalid
Keywords: |
----------------------+----------------------
Changes (by phk):
* status: new => closed
* resolution: => invalid
Old description:
> 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.
New description:
{{{
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.
--
Comment:
There is nothing in that backtrace that indicates that varnish has
anything to do with that failure.
I'm closing this ticket because there is nothing we can do about it.
--
Ticket URL: <https://www.varnish-cache.org/trac/ticket/1564#comment:1>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator
More information about the varnish-bugs
mailing list