Hi!

> Since upgrading from dev17 to dev18 I'm getting a segfault: 

I can reproduce this. Here a few details:

- a4312fa28e897ed7373785c49ddf3acbc8f9f264 is the first bad commit
- does not happen when build with USE_OPENSSL=1
- gdb backtrace (without compiler optimizations):
(gdb) bt
#0  0xb7693a23 in ?? () from /lib/i386-linux-gnu/libc.so.6
#1  0x080c5e2c in __ebmb_lookup (len=156909700, x=0x95f868c, root=0x95a3f78) at 
ebtree/ebmbtree.h:140
#2  ebmb_lookup (root=0x95a3f78, x=0x95f868c, len=156909700) at 
ebtree/ebmbtree.c:31
#3  0x0807ce0a in stktable_lookup_key (t=0x95a3f74, key=0x95ec2f0) at 
src/stick_table.c:190
#4  0x080b7bbd in smp_fetch_src_get_gpc0 (px=0x959a7f8, l4=0x95f8398, l7=0x0, 
opt=6, args=0x95a3890, smp=0xbff09f84) at src/session.c:2634
#5  0x080bd8df in acl_exec_cond (cond=0x95a3820, px=0x959a7f8, l4=0x95f8398, 
l7=0x0, opt=6) at src/acl.c:1719
#6  0x080ade39 in tcp_exec_req_rules (s=0x95f8398) at src/proto_tcp.c:997
#7  0x080b0efc in session_accept (l=0x95a3610, cfd=6, addr=0xbff0a0cc) at 
src/session.c:130
#8  0x080577eb in listener_accept (fd=4) at src/listener.c:389
#9  0x080c35f2 in _do_poll (p=0x80fcca0, exp=0) at src/ev_epoll.c:197
#10 0x0804c49a in run_poll_loop () at src/haproxy.c:1231
#11 0x0804ce94 in main (argc=4, argv=0xbff0a3c4) at src/haproxy.c:1555
(gdb) backtrace full
#0  0xb7693a23 in ?? () from /lib/i386-linux-gnu/libc.so.6
No symbol table info available.
#1  0x080c5e2c in __ebmb_lookup (len=156909700, x=0x95f868c, root=0x95a3f78) at 
ebtree/ebmbtree.h:140
        node = 0x636f6c2e
        node_bit = -1074749688
        troot = 0x636f6c2e
        pos = 0
        side = 135020369
#2  ebmb_lookup (root=0x95a3f78, x=0x95f868c, len=156909700) at 
ebtree/ebmbtree.c:31
No locals.
#3  0x0807ce0a in stktable_lookup_key (t=0x95a3f74, key=0x95ec2f0) at 
src/stick_table.c:190
        eb = 0x0
#4  0x080b7bbd in smp_fetch_src_get_gpc0 (px=0x959a7f8, l4=0x95f8398, l7=0x0, 
opt=6, args=0x95a3890, smp=0xbff09f84) at src/session.c:2634
        key = 0x95ec2f0
#5  0x080bd8df in acl_exec_cond (cond=0x95a3820, px=0x959a7f8, l4=0x95f8398, 
l7=0x0, opt=6) at src/acl.c:1719
        suite = 0x95a3920
        term = 0x95a3848
        expr = 0x95a3860
        acl = 0x95a38f8
        pattern = 0x959b17c
        smp = {flags = 0, type = 0, data = {uint = 0, sint = 0, ipv4 = {s_addr 
= 0}, ipv6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>,
                __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 
0}}}, str = {str = 0x0, size = 0, len = 0}}, ctx = {p = 0x0, i = 0, ll = 0,
            d = 0, a = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}}
        acl_res = 0
        suite_res = 3
        cond_res = 0
#6  0x080ade39 in tcp_exec_req_rules (s=0x95f8398) at src/proto_tcp.c:997
        rule = 0x95a3800
        ts = 0x95f88e0
        t = 0x959b17c
        result = 1
        ret = 3
#7  0x080b0efc in session_accept (l=0x95a3610, cfd=6, addr=0xbff0a0cc) at 
src/session.c:130
        p = 0x959a7f8
        s = 0x95f8398
        t = 0x1
        ret = -1
#8  0x080577eb in listener_accept (fd=4) at src/listener.c:389
        addr = {ss_family = 2, __ss_align = 50331658,
          __ss_padding = 
"\000\000\000\000\000\000\000\000\001\000\000\000\000\000\000\000\213\342s\267\320\032u\267p\356r\267\001\000\000\000\001\000\000\000\000\000\000\000\030\031u\267\016\215\004\b\000\000\000\000\005\000\000\000\000\000\000\000\234\211\004\b\230\000\017\bw\000\000\000X\241\360\277\350\003\000\000\000\000\000\000X\241\360\277;\211\005\bX\241\360\277\352\061\f\b\004\000\000\000\000\000\000\000M\245aQ\323\035\r\000\004\000\000"}
        laddr = 16
        l = 0x95a3610
        p = 0x959a7f8
        max_accept = 63
        cfd = 6
        ret = 0
#9  0x080c35f2 in _do_poll (p=0x80fcca0, exp=0) at src/ev_epoll.c:197
        new_updt = 1701689066
        old_updt = 1
        n = 1
        e = 1
        status = 1
        eo = 1
        en = 4
        fd = 4
        opcode = 134566143
        count = 0
        updt_idx = 0
        wait_time = 1000
#10 0x0804c49a in run_poll_loop () at src/haproxy.c:1231
        next = 0
#11 0x0804ce94 in main (argc=4, argv=0xbff0a3c4) at src/haproxy.c:1555
        err = 0
        retry = 200
        limit = {rlim_cur = 140011, rlim_max = 140011}
        errmsg = 
"\000\000\000\000Ȣ\360\277\364/o\267\064\000\000\000\021\000\000\000\021\000\000\000)\200\\\267\b`Y\t\000\000\000\000\064\000\000\000\060\356r\267\001\000\000\000\364\377\016\b\001\000\000\000\064\000\000\000Ȣ\360\277\240Ft\267\037\000\000\000\364\377\016\b\001\000\000\000\060`Y\tȢ\360\277g\377\v\b4`Y\t)\265\f\b"
        pidfd = -1
(gdb)                                     

Reply via email to