RFR: 8238761: Asynchronous handshakes [v5]
Robbin Ehn
rehn at openjdk.java.net
Wed Sep 23 10:55:20 UTC 2020
On Wed, 23 Sep 2020 03:20:02 GMT, David Holmes <dholmes at openjdk.org> wrote:
>> Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:
>>
>> Update after Coleen
>
> src/hotspot/share/runtime/handshake.cpp line 244:
>
>> 242: // A new thread on the ThreadsList will not have an operation,
>> 243: // hence it is skipped in handshake_try_process.
>> 244: HandshakeState::ProcessResult pr = thr->handshake_state()->try_process(_op);
>
> To be clear on what can be happening here ... as the VMThread has to loop through all threads first to initiate the
> handshake, by the time it starts trying to process the op, the target threads may have already done it themselves.
> Additionally while looping through all threads, a thread that has not yet been handshaked could try to handshake with a
> thread the VMThread has already processed, and so it could also execute the operation before the VMThread gets to it.
Yes
-------------
PR: https://git.openjdk.java.net/jdk/pull/151
More information about the hotspot-runtime-dev
mailing list