RFR: 8265753: Remove manual JavaThread transitions to blocked [v4]

Robbin Ehn rehn at openjdk.java.net
Thu May 20 07:31:41 UTC 2021


On Thu, 20 May 2021 06:03:28 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> Robbin Ehn has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains five additional commits since the last revision:
>> 
>>  - Review fixes
>>  - Merge branch 'master' into 8265753
>>  - Fixes for Dan
>>  - Merge branch 'master' into 8265753
>>  - Removed manual transitions
>
> src/hotspot/share/runtime/objectMonitor.cpp line 448:
> 
>> 446:     // Completed the tranisition.
>> 447:     SafepointMechanism::process_if_requested(current);
>> 448:     current->set_thread_state(_thread_in_vm);
> 
> The comment block above this code is no longer accurate as there is no longer an opportunity to go to a safepoint at the end of the block. I'm not sure what a thread dump would show with the new code.

I moved comment and current->set_current_pending_monitor(NULL); into loop.
And I set current->set_current_pending_monitor(om);  to OM again in ExitOnSuspend if we exit the OM.
The thread dump is then identical to what we have today if ~ThreadBlockInVMPreprocess safepoints.

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

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


More information about the serviceability-dev mailing list