RFR: 8341273: JVMTI is not properly hiding some continuation related methods [v3]

Serguei Spitsyn sspitsyn at openjdk.org
Tue Oct 15 22:13:12 UTC 2024


On Tue, 15 Oct 2024 20:55:54 GMT, Alex Menkov <amenkov at openjdk.org> wrote:

>> Serguei Spitsyn has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Disallow NotifyFramePop for enter/enter0/VirtualThread.run/VThreadContinuation.run
>
> src/hotspot/share/prims/jvmtiEnvBase.cpp line 2025:
> 
>> 2023:   // - it is a good invariant when a thread's handshake can't be impacted by a VTMS transition
>> 2024:   // - there is no mechanism to disable transitions of a specific carrier thread yet
>> 2025:   JvmtiVTMSTransitionDisabler disabler(is_virtual ? target : nullptr); // nullptr is to disable all
> 
> We have a number of places with the same issue - `JvmtiVTMSTransitionDisabler disabler(target)` when target thread can be virtual or platform.
> I think they need to be fixed all together (and most likely as a separate issue).
> Maybe it would be better to fix disabler itself (check if the thread provided is platform and disable transitions for all threads in the case). Then there is no need to update all this places when (if) disabling for single platform thread is implemented

Good suggestion, thanks.
Though, I'd prefer to fix it here, so will prepare a fix in the `JvmtiVTMSTransitionDisabler` constructor.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/21397#discussion_r1802073959


More information about the serviceability-dev mailing list