On Wed, 18 Feb 2026 19:50:11 GMT, Serguei Spitsyn <[email protected]> wrote:
> The function `JvmtiThreadState::process_pending_interp_only()` should protect > the check with `state->is_pending_interp_only_mode()` and call to > `JvmtiEventController::enter_interp_only_mode(state)` with the > `JvmtiThreadState_lock`. Some level of optimization with a check of > `seen_interp_only_mode()` is used as the code path of the > `process_pending_interp_only()` is hot. Then the `seen_interp_only_mode()` > has to be set somewhat earlier when the `is_pending_interp_only_mode()` is > set. > This issue was discovered when in the work on the PR update of > https://bugs.openjdk.org/browse/JDK-8373367 . > > Testing: > - TBD: mach5 tiers 1-5 Changes requested by lmesnik (Reviewer). src/hotspot/share/prims/jvmtiThreadState.hpp line 216: > 214: bool is_pending_interp_only_mode() { return _pending_interp_only_mode; > } > 215: void set_pending_interp_only_mode(bool val) { > 216: _seen_interp_only_mode = true; _seen_interp_only_mode is read without and locking and should be atomic. ------------- PR Review: https://git.openjdk.org/jdk/pull/29800#pullrequestreview-3835057915 PR Review Comment: https://git.openjdk.org/jdk/pull/29800#discussion_r2835842732
