RFR: 8232365: Implementation for JEP 363: Remove the Concurrent Mark Sweep (CMS) Garbage Collector

Leo Korinth leo.korinth at oracle.com
Fri Oct 18 08:20:04 UTC 2019


Hi,

Here is a patch that removes the CMS GC.

I have neither tested arm nor ppc; I hope my changes to those .ad files 
are correct, if someone can test those architectures, that would be great.

Please take an extra look at 
CollectedHeap::check_for_non_bad_heap_word_value, it was buggy before 
(but never called), It is now called (and hopefully correct).

I have tried to remove most parts of CMS. I have not made it a goal to 
remove all traces of CMS. I guess there are much more to cleanup, and 
suggestions of more to remove are welcomed. I think more complicated 
cleanups should be dealt with in separate enhancements.

Not fully addressed in code, but an issue that has to be dealt with, how 
do I obsolete -Xconcgc and -Xnoconcgc? I believe the option should be 
obsoleted, though I do not know if we have any precedence obsoleting -X 
options.

My patch prints:

$ java -Xconcgc -jar Notepad.jar
Java HotSpot(TM) 64-Bit Server VM warning: -Xconcgc uses UseConcMarkSweepGC

I guess that is not enough for being obsolete, compare with:

$ java -XX:UseConcMarkSweepGC -jar Notepad.jar
Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option 
UseConcMarkSweepGC; support was removed in 14.0

Bug:
   https://bugs.openjdk.java.net/browse/JDK-8232365

Webrev:
   http://cr.openjdk.java.net/~lkorinth/8232365/00

Testing:
   tier 1-5.

Thanks,
Leo


More information about the hotspot-dev mailing list