comparison src/share/vm/runtime/synchronizer.cpp @ 10135:5a9fa2ba85f0

8012907: anti-delta fix for 8010992 Summary: anti-delta fix for 8010992 until 8012902 can be fixed Reviewed-by: acorn, minqi, rdurbin
author dcubed
date Sun, 21 Apr 2013 20:41:04 -0700
parents 6f817ce50129
children 746b070f5022
comparison
equal deleted inserted replaced
10130:6f817ce50129 10135:5a9fa2ba85f0
1010 1010
1011 // 3: allocate a block of new ObjectMonitors 1011 // 3: allocate a block of new ObjectMonitors
1012 // Both the local and global free lists are empty -- resort to malloc(). 1012 // Both the local and global free lists are empty -- resort to malloc().
1013 // In the current implementation objectMonitors are TSM - immortal. 1013 // In the current implementation objectMonitors are TSM - immortal.
1014 assert (_BLOCKSIZE > 1, "invariant") ; 1014 assert (_BLOCKSIZE > 1, "invariant") ;
1015 ObjectMonitor * temp; 1015 ObjectMonitor * temp = new ObjectMonitor[_BLOCKSIZE];
1016 NEW_C_HEAP_OBJECT_ARRAY(temp, ObjectMonitor, _BLOCKSIZE, mtInternal, 0, AllocFailStrategy::RETURN_NULL);
1017 1016
1018 // NOTE: (almost) no way to recover if allocation failed. 1017 // NOTE: (almost) no way to recover if allocation failed.
1019 // We might be able to induce a STW safepoint and scavenge enough 1018 // We might be able to induce a STW safepoint and scavenge enough
1020 // objectMonitors to permit progress. 1019 // objectMonitors to permit progress.
1021 if (temp == NULL) { 1020 if (temp == NULL) {