Assert if operations on keep_alive_queue and active_queue are not thread-safe
The `vc->add_to_keep_alive_queue()` is called by:
- Http1ClientSession::release()
- Http2ClientSession::cleanup_streams()
- Http2ClientSession::release_stream()
And the `NetHandler::remove_from_active_queue()` is called by
`vc->add_to_keep_alive_queue()`.
The NetHandler::keep_alive_queue and NetHandler::active_queue are
internal queue of NetHandler. We must have acquired the NetHandler's
lock before doing anything with them.
When reenable a HttpSM from plugin, the HttpSM would be run into ethread
that different from client_vc lives because TSHttpSMCallback is
scheduled by `eventProcessor.schedule_imm()`.
(cherry picked from commit c929ed6fdee34a67529b55f9fe1c47d449ee854f)
2 files changed