RFR (S) 8213092: Add more runtime locks for concurrent class unloading
david.holmes at oracle.com
Tue Oct 30 04:17:34 UTC 2018
On 30/10/2018 1:45 PM, coleen.phillimore at oracle.com wrote:
> Summary: Add locks for calling CLDG::purge concurrently as well and for
> calling SystemDictionary::do_unloading concurrently.
> Ran linux-x64 tier1-6 through mach5 and hotspot/jtreg/runtime tests,
> which include the module tests.
> open webrev at http://cr.openjdk.java.net/~coleenp/8213092.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8213092
So ... all the locks covered by an assert_locked_or_safepoint, or which
are acquired by the VMThread at a safepoint, must never be held by a
JavaThread if it could reach a safepoint whilst that lock is held - else
we could deadlock. So can we check that with NoSafepointVerifiers?
Further, are these locks acquired by non-JavaThreads such that the
VMThread may be delayed whilst a safepoint is active?
More information about the hotspot-runtime-dev