RFR (M) 8207359: Make SymbolTable increment_refcount disallow zero

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Tue Jul 17 15:51:42 UTC 2018

Summary: Use cmpxchg for non permanent symbol refcounting, and pack 
refcount and length into an int.

This is a precurser change to the concurrent SymbolTable change. Zeroed 
refcounted entries can be deleted at anytime so they cannot be allowed 
to be zero in runtime code.  Thanks to Kim for writing the packing 
function and helping me avoid undefined behavior.

open webrev at http://cr.openjdk.java.net/~coleenp/8207359.01/webrev
bug link https://bugs.openjdk.java.net/browse/JDK-8207359

Tested with solaris ptrace helper, mach5 tier1-5 including solaris. 
Added multithreaded gtest which exercises the code.


More information about the hotspot-runtime-dev mailing list