RFR: 8297286: runtime/vthread tests crashing after JDK-8296324 [v8]

Patricio Chilano Mateo pchilanomate at openjdk.org
Thu Mar 30 18:59:25 UTC 2023


On Thu, 30 Mar 2023 00:55:59 GMT, Serguei Spitsyn <sspitsyn at openjdk.org> wrote:

>> src/hotspot/share/prims/jvmtiEnvBase.cpp line 1550:
>> 
>>> 1548: 
>>> 1549:       if (jt->is_in_VTMS_transition()) {
>>> 1550:         count++;
>> 
>> For those threads that are in a transition when we enable the events, shouldn't we also set the jvmti_is_in_VTMS_transition field for the corresponding vthread as we do in JvmtiVTMSTransitionDisabler::start_VTMS_transition()? It seems a JvmtiVTMSTransitionDisabler that targets that particular vthread could otherwise proceed after the safepoint while that vthread is still in the transition. The "all" JvmtiVTMSTransitionDisabler won't proceed because that one does check the _VTMS_transition_count counter. I see that in general we won't have access to the vthread oop though.
>
> Nice catch, thanks!
> Fixed now, but will push it together with other potential updates related to your review comments.

The issue I see is that during a transition the vt_oop that we'll get will almost always be that of the carrier thread, because it's almost the first thing we change when unmounting, and the last we change when mounting.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/13133#discussion_r1153672474


More information about the serviceability-dev mailing list