On 08/12/2017 10:21 πμ, Christopher Faulet wrote: > Le 08/12/2017 à 05:52, Willy Tarreau a écrit : >> >>> pparissis at poseidonas in ~/repo/haproxy-1.8 on (master u=) >>> sudo gdb ./haproxy >>> GNU gdb (Debian 7.12-6) 7.12.0.20161007-git >>> Copyright (C) 2016 Free Software Foundation, Inc. >>> License GPLv3+: GNU GPL version 3 or later >>> <http://gnu.org/licenses/gpl.html> >>> This is free software: you are free to change and redistribute it. >>> There is NO WARRANTY, to the extent permitted by law. Type "show copying" >>> and "show warranty" for details. >>> This GDB was configured as "x86_64-linux-gnu". >>> Type "show configuration" for configuration details. >>> For bug reporting instructions, please see: >>> <http://www.gnu.org/software/gdb/bugs/>. >>> Find the GDB manual and other documentation resources online at: >>> <http://www.gnu.org/software/gdb/documentation/>. >>> For help, type "help". >>> Type "apropos word" to search for commands related to "word"... >>> Reading symbols from ./haproxy...done. >>> (gdb) run -f /etc/haproxy/haproxy-ams4-dc.cfg >>> Starting program: /home/pparissis/repo/haproxy-1.8/haproxy -f >>> /etc/haproxy/haproxy-ams4-dc.cfg >>> [Thread debugging using libthread_db enabled] >>> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". >>> [WARNING] 340/221611 (13628) : parsing >>> [/etc/haproxy/haproxy-ams4-dc.cfg:103] : a >>> 'http-request' rule placed after a 'use_backend' rule will still be >>> processed before. >>> ^C >>> Program received signal SIGINT, Interrupt. >>> 0x000055555562e302 in register_name (name=0x5555558ee294 >>> "selected_dc_backup", >>> len=18, scope=scope@entry=0x7fffffffd83c, >>> alloc=alloc@entry=1, err=0x7fffffffdb28) at src/vars.c:215 >>> 215 HA_RWLOCK_WRLOCK(VARS_LOCK, &var_names_rwlock); >> >> Ah, this looks like a double-lock :-) >> CCing Christopher who knows better than me how to track them. >> > Hi, > > The problem is not a double-lock but an unlock on a free lock, leaving it in > a bad state. This is > not obvious on this trace, but compiling HAProxy with the debug on threads it > is easier to observe it. > > This patch is joined. It should fix the bug. Thanks Pavlos!
Applied to 1.8 repo and solved the issue as I can start haproxy. Thanks a lot for the quick fix. Cheers, Pavlos
signature.asc
Description: OpenPGP digital signature