Please review the following fix. In method `JvmtiEventControllerPrivate::recompute_thread_enabled()`, we are missing to call `leave_interp_only_mode()` for the case where `should_be_interp` is computed as false and `state->is_pending_interp_only_mode()` is true. I added the full trace leading to the crash in the bug comments. In JDK-8338383 I removed this assert because the branch condition changed and it became sort of a redundant check. But given that it was able to find this issue I added it back. I was able to reproduce the crash easily by adding an extra delay before the assert. I verified the crash doesn’t reproduce anymore with this fix. I also run the patch through mach5 tiers 1-7.
Thanks, Patricio ------------- Commit messages: - v1 Changes: https://git.openjdk.org/jdk/pull/22931/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=22931&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8310340 Stats: 2 lines in 2 files changed: 1 ins; 0 del; 1 mod Patch: https://git.openjdk.org/jdk/pull/22931.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/22931/head:pull/22931 PR: https://git.openjdk.org/jdk/pull/22931