RFR: 8361912: ThreadsListHandle::cv_internal_thread_to_JavaThread does not deal with a virtual thread's carrier thread [v2]

Patricio Chilano Mateo pchilanomate at openjdk.org
Fri Jul 25 16:24:54 UTC 2025


On Tue, 22 Jul 2025 05:47:37 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> The `cv_internal_thread_to_JavaThread` method will now check if the thread is a mounted virtual thread, and if so protect the carrier thread. User's of the API that need to deal with virtual threads must still check the carrier themselves as it could change asynchronously, but it is now guaranteed that the carrier JavaThread returned via this method cannot terminate whilst being used (the same as regular platform JavaThreads).
>> 
>> It was noticed whilst updating the documentation that the `JvmtiExport` variant `cv_oop_to_JavaThread` is unused and so can be removed.
>> 
>> Testing:
>> - tiers 1-4
>> 
>> Thanks
>
> David Holmes has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Move comment

LGTM.

src/hotspot/share/runtime/threadSMR.hpp line 48:

> 46: // perform an operation on a target thread.
> 47: //
> 48: // There two ways to refer to java.lang.Thread objects so we have two ways

Nit: are

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

Marked as reviewed by pchilanomate (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/26287#pullrequestreview-3056107193
PR Review Comment: https://git.openjdk.org/jdk/pull/26287#discussion_r2231550522


More information about the hotspot-dev mailing list