Hi, Unfortunately the switch from Unsafe to VarHandle in LockSupport and ThreadLocalRandom caused some circularity issues (similar to those for AtomicInteger) that have shown up in continuous testing (but not when i tested explicitly using the infrastructure).
The main problem is MethodType leverages ConcurrentHashMap which under certain conditions uses TLR [*]. We know we want to replace CHM usage in MethodType with an alternative Peter created, which i think we can pursue post 9 and break the circularity. This patch reverts the back to Unsafe usage: http://cr.openjdk.java.net/~psandoz/jdk9/JDK-8173083-vh-to-unsafe-ls-tlr/webrev/index.html I did not revert the changes to Striped64 and ForkJoinWorkerThread. Thanks, Paul. [*] 1) The clinit of LockSupport creates a VarHandle; 2) a VarHandle creates MethodTypes; 3) that are stored in a CHM; 4) which on occasion uses TLR 5) that uses a VarHandle whose VarForm is being initalized in 1)
