On Wed, 4 Oct 2023 21:59:54 GMT, Leonid Mesnik <lmes...@openjdk.org> wrote:

>> The JVMTI VirtualThreadStart events have to follow the ThreadStart events 
>> pattern and so, should not be thread-filtered.
>> The fix includes:
>>  - `jvmti.xml`: remov the attribute `filtered="thread"` in the 
>> `VirtuallThreadStart` event spec
>>  - `jvmtiEventController.cpp`: remove the `VTHREAD_START_BIT` from the 
>> `THREAD_FILTERED_EVENT_BITS` mask and and it to the 
>> `NEED_THREAD_LIFE_EVENTS` mask
>>  - `jvmtiExport.cpp`: rearrangements in the 
>> `JvmtiExport::post_vthread_start()` function
>> 
>> The fix also includes a couple of minor unification tweaks:
>>  - to align `JvmtiExport::post_thread_end()` with 
>> `JvmtiExport::post_vthread_end()` which have a little bit more optimized 
>> check for the `JVMTI_PHASE_PRIMORDIAL`.
>>  -  to rename the local variable `cur_thread` as `thread` to follow the 
>> common pattern in `JvmtiExport::post_vthread_start()` and 
>> `JvmtiExport::post_vthread_end()`
>>  
>>  Testing: ran mach5 tiers 1-6. All tests are passed.
>
> src/hotspot/share/prims/jvmtiExport.cpp line 1552:
> 
>> 1550:     JvmtiEnvThreadStateIterator it(state);
>> 1551:     for (JvmtiEnvThreadState* ets = it.first(); ets != nullptr; ets = 
>> it.next(ets)) {
>> 1552:       JvmtiEnv *env = ets->get_env();
> 
> This change as well as renaming cur_thread are not related to the main issue. 
>  It would be better to separate them. Easier to track and backport if needed. 
> They are mentioned in PR but not in jira bug,  hard to find the reason 
> without GitHub. Might be better to copy them in the bug if you want to keep 
> them.

Thanks. I agree with you in general.
The whole fix is relatively small, so I'd prefer to keep such a minor cleanup 
in this particular case.
I'll update the bug report with this info.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/16019#discussion_r1349184898

Reply via email to