8152185: ReferencePendingListLocker incorrectly assumes that the lock is never taken recursively
Reviewed-by: stefank, sjohanss
--- a/hotspot/src/share/vm/gc/shared/referencePendingListLocker.cpp Fri Mar 18 13:18:58 2016 +0100
+++ b/hotspot/src/share/vm/gc/shared/referencePendingListLocker.cpp Fri Mar 18 15:54:04 2016 +0100
@@ -176,8 +176,6 @@
HandleMark hm;
Handle handle(THREAD, java_lang_ref_Reference::pending_list_lock());
- assert(!is_locked_by_self(), "Should not be locked by self");
-
// Lock
ObjectSynchronizer::fast_enter(handle, &_basic_lock, false, THREAD);
@@ -213,8 +211,6 @@
// Unlock
ObjectSynchronizer::fast_exit(handle(), &_basic_lock, THREAD);
- assert(!is_locked_by_self(), "Unlocking failed");
-
if (HAS_PENDING_EXCEPTION) {
CLEAR_PENDING_EXCEPTION;
}