- 
    Bug 
- 
    Resolution: Fixed
- 
     P4 P4
- 
    hs25
- 
        b17
- 
        generic
- 
        generic
| Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build | 
|---|---|---|---|---|---|---|
| JDK-8007203 | 8 | Daniel Daugherty | P4 | Closed | Fixed | b75 | 
| JDK-8018038 | 7u45 | Daniel Daugherty | P4 | Closed | Fixed | b01 | 
| JDK-8009935 | 7u40 | Daniel Daugherty | P4 | Closed | Fixed | b16 | 
| JDK-8009324 | hs24 | Daniel Daugherty | P4 | Closed | Fixed | b35 | 
                    Work on contended locking via 6607129 has uncovered several correctness fixes:
1a) Add missing fence() to end of os::PlatformEvent::park() on both
Linux and Solaris
1b) Add missing barrier to Parker::park() by using Atomic::xchg()
to query _counter field (barrier is now on both code paths)
on Linux only.
1c) Remove assert in java_lang_Thread::set_thread_status()
1d) Add missing fence() in ObjectMonitor::EnterI() (all platforms)
1e) Remove set of "_count = 0" in ObjectMonitor::set_owner() to
avoid race with setting of _count during inflation.
Update: forgot to include the notes section:
Notes:
1c) The java_lang_Thread::set_thread_status() change is needed for
the pending quick monitor operations. This means the change is
potentially needed for several other buckets so I put it in the
bug_fix bucket as a "common" place.
            
1a) Add missing fence() to end of os::PlatformEvent::park() on both
Linux and Solaris
1b) Add missing barrier to Parker::park() by using Atomic::xchg()
to query _counter field (barrier is now on both code paths)
on Linux only.
1c) Remove assert in java_lang_Thread::set_thread_status()
1d) Add missing fence() in ObjectMonitor::EnterI() (all platforms)
1e) Remove set of "_count = 0" in ObjectMonitor::set_owner() to
avoid race with setting of _count during inflation.
Update: forgot to include the notes section:
Notes:
1c) The java_lang_Thread::set_thread_status() change is needed for
the pending quick monitor operations. This means the change is
potentially needed for several other buckets so I put it in the
bug_fix bucket as a "common" place.
- backported by
- 
                    JDK-8007203 correctness fixes motivated by contended locking work (6607129) -           
- Closed
 
-         
- 
                    JDK-8009324 correctness fixes motivated by contended locking work (6607129) -           
- Closed
 
-         
- 
                    JDK-8009935 correctness fixes motivated by contended locking work (6607129) -           
- Closed
 
-         
- 
                    JDK-8018038 correctness fixes motivated by contended locking work (6607129) -           
- Closed
 
-         
- relates to
- 
                    JDK-6822370 ReentrantReadWriteLock: threads hung when there are no threads holding onto the lock (Netra x4450) -           
- Closed
 
-         
- 
                    JDK-8061552 Contended Locking speedup PlatformEvent unpark bucket -           
- Closed
 
-         
             (1 relates to)