diff -r 8c911031c3e7 src/share/vm/gc_interface/gcCause.cpp --- a/src/share/vm/gc_interface/gcCause.cpp Wed Jan 07 10:19:00 2015 +0100 +++ b/src/share/vm/gc_interface/gcCause.cpp Wed Jan 07 23:43:47 2015 +0900 @@ -103,6 +103,9 @@ case _last_ditch_collection: return "Last ditch collection"; + case _jcmd_gc_run: + return "jcmd GC.run"; + case _last_gc_cause: return "ILLEGAL VALUE - last gc cause - ILLEGAL VALUE"; diff -r 8c911031c3e7 src/share/vm/gc_interface/gcCause.hpp --- a/src/share/vm/gc_interface/gcCause.hpp Wed Jan 07 10:19:00 2015 +0100 +++ b/src/share/vm/gc_interface/gcCause.hpp Wed Jan 07 23:43:47 2015 +0900 @@ -74,6 +74,9 @@ _g1_humongous_allocation, _last_ditch_collection, + + _jcmd_gc_run, + _last_gc_cause }; diff -r 8c911031c3e7 src/share/vm/services/diagnosticCommand.cpp --- a/src/share/vm/services/diagnosticCommand.cpp Wed Jan 07 10:19:00 2015 +0100 +++ b/src/share/vm/services/diagnosticCommand.cpp Wed Jan 07 23:43:47 2015 +0900 @@ -267,7 +267,7 @@ void SystemGCDCmd::execute(DCmdSource source, TRAPS) { if (!DisableExplicitGC) { - Universe::heap()->collect(GCCause::_java_lang_system_gc); + Universe::heap()->collect(GCCause::_jcmd_gc_run); } else { output()->print_cr("Explicit GC is disabled, no GC has been performed."); }