8077392: Stream fork/join tasks occasionally fail to complete

8131715: backout the fix for JDK-8079359 when JDK-8077392 is fixed

Add missing BasicLock::_displaced_header init to ObjectSynchronizer::quick_enter() and re-enable Contended Locked "fast enter" bucket.

Reviewed-by: gthornbr, dholmes, kvn, cvarming, acorn
This commit is contained in:
Daniel D. Daugherty 2016-04-04 14:41:00 -07:00
parent 5cef85023b
commit 66570c722b
2 changed files with 15 additions and 3 deletions

View file

@ -1969,8 +1969,8 @@ JRT_END
// Handles the uncommon case in locking, i.e., contention or an inflated lock.
JRT_BLOCK_ENTRY(void, SharedRuntime::complete_monitor_locking_C(oopDesc* _obj, BasicLock* lock, JavaThread* thread))
// Disable ObjectSynchronizer::quick_enter() in default config
// until JDK-8077392 is resolved.
if ((SyncFlags & 256) != 0 && !SafepointSynchronize::is_synchronizing()) {
// on AARCH64 until JDK-8153107 is resolved.
if (AARCH64_ONLY((SyncFlags & 256) != 0 &&) !SafepointSynchronize::is_synchronizing()) {
// Only try quick_enter() if we're not trying to reach a safepoint
// so that the calling thread reaches the safepoint more quickly.
if (ObjectSynchronizer::quick_enter(_obj, thread, lock)) return;