RFR(XXS): 8001028: Improve GC option handling

John Cuthbertson john.cuthbertson at oracle.com
Tue Dec 4 14:55:14 PST 2012


Hi Everyone,

Can I have a couple volunteers review the changes for this CR? The 
webrev can be found at: http://cr.openjdk.java.net/~johnc/8001028/webrev.0/

Summary:
When the JVM is starting up on a system that is out of native resources 
(perhaps as the result of the user specifying too large a number of GC 
threads), the creation of the Finalizer thread can fail. When this 
happens the JVM attempts to throw an out of memory error which can lead 
to assertion failures and crashes because the class for java.lang.Class 
has not yet been initialized. Changing the initialization order so that 
the initialization of java.lang.Class comes before 
java.lang.ref.Finalizer allows the JVM to exit in a more orderly fashion.

Testing:
Command line testing with some code inserted into the thread creation 
code to force ENOMEM returns; jprt; nsk gc, jit, regression tests.

This change has already been reviewed internally so I'm interested in 
hearing from folks who might be affected by the change in initialization 
order.

Thanks,

JohnC



More information about the hotspot-dev mailing list