-
Bug
-
Resolution: Fixed
-
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)