]> git.ipfire.org Git - thirdparty/haproxy.git/commit
BUG/MINOR: stream: do not call co_data() from __strm_dump_to_buffer()
authorWilly Tarreau <w@1wt.eu>
Fri, 21 Feb 2025 16:18:00 +0000 (17:18 +0100)
committerWilly Tarreau <w@1wt.eu>
Fri, 21 Feb 2025 16:18:00 +0000 (17:18 +0100)
commit9d5bd47634707963ac6be4fc90e64feded174d0a
treee26df6ad060b4b3a23fcb25cbc6090109ab6cd1a
parent0bdf414fa5bfcf25fd98536d83e40c40bb325eda
BUG/MINOR: stream: do not call co_data() from __strm_dump_to_buffer()

co_data() was instrumented to detect cases where c->output > data and
emits a warning if that's not correct. The problem is that it happens
quite a bit during "show threads" if it interrupts traffic anywhere,
and that in some environments building with -DDEBUG_STRICT_ACTION=3,
it will kill the process.

Let's just open-code the channel functions that make access to co_data(),
there are not that many and the operations remain very simple.

This can be backported to 3.1. It didn't trigger in earlier versions
because they didn't have this CHECK_IF_HOT() test.
src/stream.c