(XS) RFR: 8152849: share/vm/runtime/mutex.cpp:1161 assert(((uintptr_t(_owner))|(uintptr_t(_LockWord.FullWord))|(uintptr_t(_EntryList))|(uintptr_t(_WaitSet))|(uintptr_t(_OnDeck))) == 0) failed

David Holmes david.holmes at oracle.com
Wed Aug 17 07:45:55 UTC 2016


Bug: https://bugs.openjdk.java.net/browse/JDK-8152849

webrev: http://cr.openjdk.java.net/~dholmes/8152849/webrev/

This is a rare assertion failure that has proven to unreproducible even 
by directly trying to exercise the theoretical race conditions mentioned 
in the bug report. All I can do for now is augment the assert to print 
out the various values so we can at least see where things are failing, 
next time it happens.

Example output:

#  Internal Error 
(/scratch/dh198349/jdk9-hs/hotspot/src/share/vm/runtime/mutex.cpp:1157), 
pid=21732, tid=21734
# 
assert(((uintptr_t(_owner))|(uintptr_t(_LockWord.FullWord))|(uintptr_t(_EntryList))|(uintptr_t(_WaitSet))|(uintptr_t(_OnDeck))) 
== 0) failed: 
_owner(0x0000000000000000)|_LockWord(0x0000000000000000)|_EntryList(0x0000000000000000)|_WaitSet(0x0000000000000000)|_OnDeck(0x00000000deaddead) 
!= 0

Thanks,
David


More information about the hotspot-runtime-dev mailing list