8085965: VM hangs in C2Compiler

Wed, 17 Jun 2015 05:56:43 -0700

author
poonam
date
Wed, 17 Jun 2015 05:56:43 -0700
changeset 7881
68de83e1d912
parent 7864
91a1be057e0a
child 7882
9d514a2d02ff

8085965: VM hangs in C2Compiler
Summary: CMSClassUnloadingEnabled and ExplicitGCInvokesConcurrentAndUnloadsClasses should be disabled when -Xnoclassgc is specified
Reviewed-by: jmasa, kbarrett

src/share/vm/memory/genMarkSweep.cpp file | annotate | diff | comparison | revisions
src/share/vm/runtime/arguments.cpp file | annotate | diff | comparison | revisions
     1.1 --- a/src/share/vm/memory/genMarkSweep.cpp	Thu Jun 04 23:11:44 2015 -0700
     1.2 +++ b/src/share/vm/memory/genMarkSweep.cpp	Wed Jun 17 05:56:43 2015 -0700
     1.3 @@ -211,7 +211,7 @@
     1.4                           false, // Younger gens are not roots.
     1.5                           true,  // activate StrongRootsScope
     1.6                           GenCollectedHeap::SO_None,
     1.7 -                         GenCollectedHeap::StrongRootsOnly,
     1.8 +                         ClassUnloading,
     1.9                           &follow_root_closure,
    1.10                           &follow_root_closure,
    1.11                           &follow_cld_closure);
     2.1 --- a/src/share/vm/runtime/arguments.cpp	Thu Jun 04 23:11:44 2015 -0700
     2.2 +++ b/src/share/vm/runtime/arguments.cpp	Wed Jun 17 05:56:43 2015 -0700
     2.3 @@ -1372,6 +1372,12 @@
     2.4    if (!FLAG_IS_DEFAULT(CMSParPromoteBlocksToClaim) || !FLAG_IS_DEFAULT(OldPLABWeight)) {
     2.5      CFLS_LAB::modify_initialization(OldPLABSize, OldPLABWeight);
     2.6    }
     2.7 +
     2.8 +  if (!ClassUnloading) {
     2.9 +    FLAG_SET_CMDLINE(bool, CMSClassUnloadingEnabled, false);
    2.10 +    FLAG_SET_CMDLINE(bool, ExplicitGCInvokesConcurrentAndUnloadsClasses, false);
    2.11 +  }
    2.12 +
    2.13    if (PrintGCDetails && Verbose) {
    2.14      tty->print_cr("MarkStackSize: %uk  MarkStackSizeMax: %uk",
    2.15        (unsigned int) (MarkStackSize / K), (uint) (MarkStackSizeMax / K));

mercurial