RFR: 8287281: adjust guarantee in Handshake::execute for the case of target thread being current [v5]

Johan Sjölén duke at openjdk.java.net
Tue Jun 7 12:21:13 UTC 2022


On Tue, 7 Jun 2022 09:58:11 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 two additional commits since the last revision:
> 
>  - Remove unused variable
>  - Use current instead of self as name for current thread

It seems that we have at least two choices here:

1. Change the `is_handshake_safe_for` to `current == target` and be done with it.
2. Investigate whether `is_handshake_safe_for` is OK to be used in this context.

Is there anything I am missing?

I'm fine with going for option 1 but unless we need to get this change in quickly (it's a P3 bug, not sure what that entails) I'd like to wait for @robehn's input.

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

PR: https://git.openjdk.java.net/jdk/pull/8992


More information about the serviceability-dev mailing list