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

Serguei Spitsyn sspitsyn at openjdk.org
Wed Oct 9 08:01:58 UTC 2024


On Tue, 8 Oct 2024 00:11:12 GMT, Leonid Mesnik <lmesnik at openjdk.org> wrote:

>> This fixes a problem in the VTMS (Virtual Thread Mount State) transition frames hiding mechanism.
>> Please, see a fix description in the first comment.
>> 
>> Testing:
>>  - Verified with new test `vthread/CheckHiddenFrames`
>>  - Mach5 tiers 1-6 are passed
>
> src/hotspot/share/prims/jvmtiEnvBase.cpp line 691:
> 
>> 689: 
>> 690:   if (is_virtual || jt->is_in_VTMS_transition()) { // filter out pure continuations
>> 691:     jvf = check_and_skip_hidden_frames(jt->is_in_VTMS_transition(), jvf);
> 
> Wouldn't be easier to split method `check_and_skip_hidden_frames` to skip_yeilds and skip_transition frames? 
> BTW Also it is unclear shouldn't the `@Hidden` methods be skipped from all jvmti frame streams?

Good suggestion, thanks. I was also thinking about it but was not sure it can be simplified.
JVMTI does not support @Hidden annotation which is used in Java `printStackTrace()` api implementation.

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

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


More information about the hotspot-dev mailing list