@macisasandwich ran into this when working with port ready changes in autest. The extra port probe tied up the test ssl plugin (for tls_hooks15) which exercised a TLS hook on a continuation with a mutex. Since the invoke method could not grab the lock, the assertion went off.
I went back to look at how the TLS code should grab the continuation lock before calling invoke. But there are many (most) cases where the TLS hook cannot be delayed by a reschedule in the case when the lock cannot be obtained. In most cases for such global continuations, you would not want a lock on the continuation for performance reasons. In the case where locking is needed, it would be better done by the plugin writer internal to the plugin. I made a PR with code changes to force continuations to not have mutexes if they are using the SSL hooks. With this code change, Trafficserver will assert if a continuation with a mutex tries to attach to a SSL hooks. The PR with code change https://github.com/apache/trafficserver/pull/4939 Please share your comments/concerns. Thanks, Susan