Hi!

I have a backtrace for segfault in haproxy=1.8.4 with 4 threads. It happens
usually under heavy load. Can you take a look?

Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `/usr/sbin/haproxy -f /etc/haproxy/haproxy-market.cfg
-p /var/run/haproxy-market'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  __pendconn_free (p=0x55d61e970cd8) at src/queue.c:292
292 HA_ATOMIC_SUB(&p->srv->nbpend, 1);
(gdb) bt
#0  __pendconn_free (p=0x55d61e970cd8) at src/queue.c:292
#1  0x000055d61be491de in pendconn_get_next_strm (px=0x55d61e96fea0,
srv=0x55d61ea3d950) at src/queue.c:122
#2  process_srv_queue (s=0x55d61ea3d950) at src/queue.c:153
#3  0x000055d61bdcfcf6 in stream_free (s=0x7f1a6899a440) at src/stream.c:315
#4  process_stream (t=<optimized out>) at src/stream.c:2513
#5  0x000055d61be48aa8 in process_runnable_tasks () at src/task.c:311
#6  0x000055d61bdfdc84 in run_poll_loop () at src/haproxy.c:2398
#7  run_thread_poll_loop (data=<optimized out>) at src/haproxy.c:2460
#8  0x00007f1a7f91d184 in start_thread () from
/lib/x86_64-linux-gnu/libpthread.so.0
#9  0x00007f1a7eb9b03d in clone () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) quit

root@a.local# haproxy -vv
HA-Proxy version 1.8.4-1 2018/02/08
Copyright 2000-2018 Willy Tarreau <wi...@haproxy.org>

Build options :
  TARGET  = linux2628
  CPU     = generic
  CC      = gcc
  CFLAGS  = -g -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4
-Wformat -Werror=format-security -D_FORTIFY_SOURCE=2
  OPTIONS = USE_GETADDRINFO=1 USE_ZLIB=1 USE_REGPARM=1 USE_THREAD=1
USE_OPENSSL=1 USE_LUA=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_TFO=1 USE_NS=1

Default settings :
  maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200

Built with OpenSSL version : OpenSSL 1.0.1f 6 Jan 2014
Running on OpenSSL version : OpenSSL 1.0.1f 6 Jan 2014
OpenSSL library supports TLS extensions : yes
OpenSSL library supports SNI : yes
OpenSSL library supports : SSLv3 TLSv1.0 TLSv1.1 TLSv1.2
Built with Lua version : Lua 5.3.1
Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT
IP_FREEBIND
Encrypted password support via crypt(3): yes
Built with multi-threading support.
Built with PCRE version : 8.31 2012-07-06
Running on PCRE version : 8.31 2012-07-06
PCRE library supports JIT : no (libpcre build without JIT?)
Built with zlib version : 1.2.8
Running on zlib version : 1.2.8
Compression algorithms supported : identity("identity"),
deflate("deflate"), raw-deflate("deflate"), gzip("gzip")
Built with network namespace support.

Available polling systems :
      epoll : pref=300,  test result OK
       poll : pref=200,  test result OK
     select : pref=150,  test result OK
Total: 3 (3 usable), will use epoll.

Available filters :
[SPOE] spoe
[COMP] compression
[TRACE] trace

--
Best regards
Maksim Kupriianov

Reply via email to