RFR: 8310340: assert(_thread->is_interp_only_mode() || stub_caller) failed: expected a stub-caller

David Holmes dholmes at openjdk.org
Mon Jan 6 21:22:36 UTC 2025


On Mon, 6 Jan 2025 16:41:21 GMT, Patricio Chilano Mateo <pchilanomate at openjdk.org> wrote:

> 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

Looks good to me. Thanks for the detailed analysis.

-------------

Marked as reviewed by dholmes (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/22931#pullrequestreview-2532992481


More information about the serviceability-dev mailing list