RFR: 8287281: adjust guarantee in Handshake::execute for the case of target thread being current [v6]
Robbin Ehn
rehn at openjdk.java.net
Mon Jun 13 07:49:08 UTC 2022
On Tue, 7 Jun 2022 12:42:05 GMT, Johan Sjölén <duke at openjdk.java.net> wrote:
>> Please review this PR for fixing JDK-8287281.
>>
>> If a thread is handshake safe we immediately execute the closure, instead of going through the regular Handshake process.
>>
>> Finally: Should `VirtualThreadGetThreadClosure` and its `do_thread()` body be inlined instead? We can do this in this PR, imho, but I'm hoping to get some input on this.
>>
>>
>> Passes tier1. Running tier2-5.
>
> Johan Sjölén has updated the pull request incrementally with one additional commit since the last revision:
>
> Move assert up and remove other assert, remove unused var
The only way to become an active handshaker is to handshake another thread (target), when that happens we verify that target is ThreadsList safe.
Thus active handshaker is guaranteed that the target is already verified on a ThreadsList.
As long as we are the active handshake the target is blocked, i.e. target is safepoint safe.
-------------
PR: https://git.openjdk.org/jdk/pull/8992
More information about the serviceability-dev
mailing list