Please review the code changes to fix:
JDK-8085965: <https://bugs.openjdk.java.net/browse/JDK-8085965> VM hangs
in C2Compiler
Problem and fix:
In JDK8, CMSClassUnloadingEnabled option which is used to control the
class-unloading in CMS, was enabled by default. But if the user
specifies -Xnoclassgc or -XX:-ClassUnloading on the command line then
classes get unloaded but updating of subklasses/siblings links gets
skipped by the ClassUnloading check in the following function:
/void Klass::clean_weak_klass_links(BoolObjectClosure* is_alive, bool /
/clean_alive_klasses) {/
/ if (!ClassUnloading) {/
/ return;/
/ }
/which corrupts the class hierarchy links causing hangs and crashes.
This fix honors -XX:-ClassUnloading and -Xnoclassgc options and disables
class unloading with CMS.
Webrev: http://cr.openjdk.java.net/~poonam/8085965/webrev/
Thanks,
Poonam
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/hotspot-gc-dev/attachments/20150610/7770e2db/attachment.html>