OPTIM: lb-leastconn: do not take the server lock on take_conn/drop_conn
authorWilly Tarreau <w@1wt.eu>
Wed, 17 Feb 2021 15:14:00 +0000 (16:14 +0100)
committerWilly Tarreau <w@1wt.eu>
Thu, 18 Feb 2021 09:06:45 +0000 (10:06 +0100)
commit85b2fb03580f60d20d20ecbda8c9b63804d8e900
treef14342a38a62612921646136f669cdadd72f4e69
parent6b96e0e9d204bb7e30222964d641cc28a0e4d0c0
OPTIM: lb-leastconn: do not take the server lock on take_conn/drop_conn

The operations are only an insert and a delete into the LB tree, which
doesn't require the server's lock at all as the lbprm lock is already
held. Let's drop it. Just for the sake of cleanness, given that the
served and nbpend values used to be atomically updated, we'll use an
atomic load to read them.
src/lb_fwlc.c