RFR: 8257831: Suspend with handshakes [v2]

David Holmes dholmes at openjdk.java.net
Wed Mar 31 07:02:37 UTC 2021


On Mon, 29 Mar 2021 17:30:32 GMT, Richard Reingruber <rrich at openjdk.org> wrote:

>> Robbin Ehn has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains two commits:
>> 
>>  - Merge branch 'master' into SuspendInHandshake
>>  - 8257831: Suspend with handshake (review baseline)
>
> src/hotspot/share/runtime/handshake.cpp line 485:
> 
>> 483:       } else {
>> 484:         // Asynchronous may block so they may not execute ~PreserveExceptionMark before safepointing
>> 485:         // in outer loop.
> 
> Sorry, I don't understand the comment.

I think this relates to why the PEM was moved from the loop-scope to the sync op case only. That said it isn't clear why we need the HM or PEM.

> src/hotspot/share/runtime/os.cpp line 874:
> 
>> 872: 
>> 873: void os::start_thread(Thread* thread) {
>> 874:   if (thread->is_Java_thread()) {
> 
> Then and else blocks seem to do the very same things.

Agreed - no need to distinguish between thread types here.

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

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


More information about the hotspot-runtime-dev mailing list