mirror of
http://git.haproxy.org/git/haproxy.git/
synced 2025-01-20 20:50:44 +00:00
b882dd88cc
This function replaces stream_res_available(), which is used as a callback for the buffer allocator. It now carefully checks which stream interface was blocked on a buffer allocation, tries to allocate the input buffer to this stream interface, and wakes the task up once such a buffer was found. It will automatically remove the SI_FL_WAIT_ROOM flag upon success since the info this flag indicates becomes wrong as soon as the buffer is allocated. The code is still far from being perfect because if a call to si_cs_recv() fails to allocate a buffer, we'll still end up passing via process_stream() again, but this could be improved in the future by using finer-grained wake-up notifications. |
||
---|---|---|
.. | ||
common | ||
import | ||
proto | ||
types |