On Thu, 24 Jun 2021 05:17:02 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:
> Re-enable the assert that was disabled (with some overhead) by > [JDK-8265683](https://bugs.openjdk.java.net/browse/JDK-8265683). Explanation > is in the CR and also in comments included with the changes. > > I tested by running `vmTestbase/nsk/jdb/suspend/suspend001/suspend001.java` > and `vmTestbase/nsk/jdb/wherei/wherei001/wherei001.java` 100's of times, and > did not see any failures. I also verified the original issue was still > reproducible by temporarily not setting `gdata->handlingVMDeath = JNI_TRUE`, > which did trigger the assert as expected. src/jdk.jdwp.agent/share/native/libjdwp/eventHandler.c line 1243: > 1241: > 1242: /* Setting this flag is needed for a very special case. See the > reference in findThread(). */ > 1243: gdata->handlingVMDeath = JNI_TRUE; Is this used to communicate across different threads? If so then it needs to be at least volatile, but a more forceful memory-barrier may be needed on some platforms. I can't tell in what context findThread will be called after this has been set to true. ------------- PR: https://git.openjdk.java.net/jdk/pull/4580