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

Robbin Ehn rehn at openjdk.java.net
Tue May 25 06:49:16 UTC 2021


On Mon, 24 May 2021 17:57:44 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:

>> Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:
>> 
>>   Final fixes: last famous words
>
> src/hotspot/share/runtime/objectMonitor.cpp line 451:
> 
>> 449:     // We cleared the pending monitor info since we've just gotten past
>> 450:     // the enter-check-for-suspend dance and we now own the monitor free
>> 451:     // and clear, i.e., it is no longer pending.
> 
> This comment explains why the set-pending-to-NULL code was here
> (outside the loop). You moved the code, but now the comment is
> misplaced and the code no longer works the same.
> 
> Update: I found this resolved comment below:
> 
>     And I set current->set_current_pending_monitor(om); to OM again
>     in ExitOnSuspend if we exit the OM.
> 
> so that explains why we don't have a big change in behavior.
> 
> However, I think you still need to do something about this comment.
> 
> There is still an observable change in behavior in that the current
> pending monitor can cycle between set->NULL->set->NULL when
> we run into a suspend request. Previously, it did not cycle.

If we stop for a suspend request current pending monitor will always be set, so the cycling cannot be seen.
Updated comment(s).

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

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


More information about the hotspot-runtime-dev mailing list