]> git.kaiwu.me - haproxy.git/commit
BUG/MINOR: mux_quic: wake streams on soft-stop using listener socket
authorAmaury Denoyelle <adenoyelle@haproxy.com>
Tue, 20 Oct 2026 09:12:00 +0000 (11:12 +0200)
committerAmaury Denoyelle <adenoyelle@haproxy.com>
Tue, 20 Oct 2026 12:27:35 +0000 (14:27 +0200)
commitc9be8d096a69474dfc52bdbdaa17f86f8c9429ce
tree1624e3392bc93a63f30d8a2e4bdffd074369fc9b
parent803437cb83e9518173ef1200d30f4925e24f5d90
BUG/MINOR: mux_quic: wake streams on soft-stop using listener socket

Since the following patch, streams wakeup mechanism has changed so that
every still present stream are notified regardless of the connection
status. This is useful when qcm_wake() callback is used. Along with this
change, qcc_wake_streams() via qcm_wake() is no longer directly called
if the connection is on error, as previous qcc_io_process() already
perform it.

  044ad3a602d7b217ec1470f06ec15bca102ff685
  BUG/MEDIUM: mux-quic: adjust wakeup behavior

This causes issue when qcm_wake() is used to notify about proxy
soft-stop. If listener socket is used, soft-stop is not really
supported, so connection is flagged with CO_FL_ERROR and
qcc_io_process() is interrupted. This skips stream notification, so they
will remain until their timeout fire, which may block worker termination
for some delay.

Fix this by ensuring qcc_wake_streams() is always called if connection
on error in qcc_io_process() epilogue.

This must be backported up to 2.8.
src/mux_quic.c