On Wed, 16 Feb 2022 00:17:46 GMT, Zhengyu Gu <z...@openjdk.org> wrote:
> I am not sure if it is possible, but checking bagSize(deletedSignatures) == 0 > seems to race against classTrack_reset() where it does not take handlerLock > lock. I had thought of that too, but I think the way `classTrack_reset()` is called, it is likely not possible for there to be a `classTrack_processUnloads()` also coming in because everything is shut down: ``` threadControl_onDisconnect(); standardHandlers_onDisconnect(); /* * Cut off the transport immediately. This has the effect of * cutting off any events that the eventHelper thread might * be trying to send. */ transport_close(); debugMonitorDestroy(cmdQueueLock); /* Reset for a new connection to this VM if it's still alive */ if ( ! gdata->vmDead ) { debugInit_reset(getEnv()); <--- calls classTrack_reset() } ------------- PR: https://git.openjdk.java.net/jdk/pull/7461