RFR: 8257831: Suspend with handshakes [v4]

Robbin Ehn rehn at openjdk.java.net
Mon Apr 12 08:03:32 UTC 2021


On Fri, 9 Apr 2021 16:16:45 GMT, Daniel D. Daugherty <dcubed at openjdk.org> wrote:

> I'm still really happy with this fix! Thumbs up!
> Reminder: don't forget to decide what to do about the obsolete options.
> @dholmes-ora can provide guidance on how to handle this type of removal.

Thanks, yes fixing CSR!

> src/hotspot/share/runtime/handshake.cpp line 654:
> 
>> 652:   void do_thread(Thread* thr) {
>> 653:     JavaThread* target = thr->as_Java_thread();
>> 654:     target->handshake_state()->self_suspened();
> 
> Typo: s/self_suspened/self_suspended/

Fixed

> src/hotspot/share/runtime/objectMonitor.cpp line 970:
> 
>> 968: 
>> 969:       current->frame_anchor()->make_walkable(current);
>> 970:       OrderAccess::storestore();
> 
> Needs a comment explaining what the memory sync is for.

Fixed

> src/hotspot/share/runtime/objectMonitor.cpp line 977:
> 
>> 975:         if (_succ == current) {
>> 976:             _succ = NULL;
>> 977:             OrderAccess::fence();
> 
> Please add a comment to this line:
> `OrderAccess::fence();  // always do a full fence when successor is cleared`

Fixed

> src/hotspot/share/runtime/objectMonitor.cpp line 1540:
> 
>> 1538:     {
>> 1539:       current->frame_anchor()->make_walkable(current);
>> 1540:       OrderAccess::storestore();
> 
> Needs a comment explaining what the memory sync is for.

Fixed

> src/hotspot/share/runtime/objectMonitor.cpp line 1555:
> 
>> 1553:         if (_succ == current) {
>> 1554:             _succ = NULL;
>> 1555:             OrderAccess::fence();
> 
> Please add a comment to this line:
> OrderAccess::fence(); // always do a full fence when successor is cleared

Fixed

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

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


More information about the serviceability-dev mailing list