On Fri, 22 Oct 2021 04:02:04 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:
>> Richard Reingruber has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Hoist locking from trackAppResume() up to it its caller doPendingTasks() > > src/jdk.jdwp.agent/share/native/libjdwp/threadControl.c line 2212: > >> 2210: * handlerLock is not needed anymore. We release it before >> calling >> 2211: * blockOnDebuggerSuspend() because it is required for resumes >> by the >> 2212: * debugger so we cannot wait for that holding handlerLock. > > * handlerLock is not needed anymore. We must release it before calling > * blockOnDebuggerSuspend() because it is required for resumes done by > * the debugger. If resumee is currently suspended by the debugger, > then > * blockOnDebuggerSuspend() will block until a debugger resume is > done. > * If it blocks while holding the handlerLock, then the resume will > deadlock. Done. ------------- PR: https://git.openjdk.java.net/jdk/pull/5849