Le 28/06/2026 à 5:28 PM, Yaacov Akiba Slama a écrit :
Hi,
Sending again because the patch was scrambled.
After upgrading to 3.4.1 we hit repeated BUG_ON crashes in __b_putblk()
triggered by the FCGI drain fix (84b952515). The drain fix is correct,
but it exposed missing b_room() checks in four b_xfer() zero-copy call
sites. Patch in attachment fixes all four.
Could you share your backtrace please ?
Your patch should not fix anything. In appctx_htx_rcv_buf(), h2_rcv_buf() and
qcs_http_rcv_buf(), b_xfer() is called when the destination buffer is empty. So
there is always enough space, the buffers are swapped.__b_putblk() is never called.
Remains the fix for h1_nego_ff(). In that case, relying on b_contig_space() is
safe, especially because the buffer is realigned if the free space wraps. In
fact b_room() and b_contig_space() should be equivalent.
Your backtrace should help me to better understand your issue.
Regards,
--
Christopher Faulet