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. ------------- Commit messages: - 8316233: VirtualThreadStart events should not be thread-filtered Changes: https://git.openjdk.org/jdk/pull/16019/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=16019&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8316233 Stats: 35 lines in 3 files changed: 9 ins; 11 del; 15 mod Patch: https://git.openjdk.org/jdk/pull/16019.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/16019/head:pull/16019 PR: https://git.openjdk.org/jdk/pull/16019