]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: stream: only loop on flags relevant to the analysers
authorWilly Tarreau <w@1wt.eu>
Thu, 6 Jun 2019 12:32:49 +0000 (14:32 +0200)
committerWilly Tarreau <w@1wt.eu>
Thu, 6 Jun 2019 14:36:19 +0000 (16:36 +0200)
commit3c5c066d66d213afffaead7e82f3233d9debf66d
tree0b8ecd48a20f1bc9fb149b14ad741d5321eaa7ef
parent829bd4710f69ac1d4cce76ac35c56e004ffef26d
MEDIUM: stream: only loop on flags relevant to the analysers

In process_stream() we detect a number of conditions to decide to loop
back to the analysers. Some of them are excessive in that they perform
a strict comparison instead of filtering on the flags relevant to the
analysers as is done at other places, resulting in excess wakeups. One
of the effect is that after a successful WRITE_PARTIAL, a second send is
not possible, resulting in the loss of WRITE_PARTIAL, causing another
wakeup! Let's apply the same mask and verify the flags correctly.
src/stream.c