RFR(S): 8033405 - metaspace/stressHierarchy/stressHierarchy005 hangs in atexit handler
David Holmes
david.holmes at oracle.com
Thu Apr 24 08:28:42 UTC 2014
Hi Christian,
On 24/04/2014 1:18 AM, Christian Tornqvist wrote:
> Hi everyone,
>
> This is a small fix for an issue on Windows where NMT tries to track a
> free from a static destructor and ends up hanging on acquiring the
> ThreadCritical lock. The fix is to make sure we shut down NMT before the
> VM exits and then to not track malloc/free when NMT is shutting down.
The real fix is to get rid of those non-trivial static destructors!
That aside when exactly in the VM termination process will DllMain be
called? How can we be sure that there is sufficient VM state still valid
to perform the NMT shutdown? The detach hook should only be doing very
simple resource cleanup - I'm not sure this qualifies.
David
> Zhengyu is working on a rewrite of the NMT feature where this won’t be
> an issue, so this is a temporary workaround until then.
>
> Tested on Windows x64 using vm.quick and Hotspot jtreg tests.
>
> Webrev:
>
> http://cr.openjdk.java.net/~ctornqvi/webrev/8033405/webrev.00/
>
> Bug:
>
> https://bugs.openjdk.java.net/browse/JDK-8033405
>
> Thanks,
>
> Christian
>
More information about the hotspot-runtime-dev
mailing list