On Mon, 7 Oct 2024 23:43:23 GMT, Leonid Mesnik <lmes...@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 2009: > >> 2007: bool is_virtual = java_lang_VirtualThread::is_instance(thread_oop); >> 2008: >> 2009: // Target can be virtual or platform thread. > > Can you please explain in comment why is it needed to disable all threads for > platform target thread. Thank you for suggestion. Explained comment. Now, it looks as below: // Target can be virtual or platform thread. // Disable VTMS transition for one thread if it is virtual. // Otherwise, disable VTMS transitions for all threads // to protect against VTMS transitions in carrier threads. // For the latter VTMS transitions are disabled for all threads by several reasons: // - carrier threads can mount virtual threads which may cause incorrect behavior // - it is good invariant if we can ensure no VTMS transition might happen at some points // - there is no mechanism to disable transitions for a specific carrier threads yet ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/21397#discussion_r1793048247