Skip to content

Always enqueue isc__nm_tcp_resumeread()

Ondřej Surý requested to merge 3079-always-enqueue-isc__nm_tcp_resumeread into main

The isc__nm_tcp_resumeread() was using maybe_enqueue function to enqueue netmgr event which could case the read callback to be executed immediately if there was enough data waiting in the TCP queue.

If such thing would happen, the read callback would be called before the previous read callback was finished and the worker receive buffer would be still marked "in use" causing a assertion failure.

This would affect only raw TCP channels, e.g. rndc and http statistics.

Closes #3079 (closed)

Edited by Evan Hunt

Merge request reports