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

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Mon Oct 21 18:08:21 UTC 2019



On 10/18/19 4:20 AM, Leo Korinth wrote:
> 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.

I can send you a list of things extra things I know about.  Thank you 
for not addressing all of the CMS special cases with this patch.

http://cr.openjdk.java.net/~lkorinth/8232365/00/src/hotspot/share/oops/oop.inline.hpp.udiff.html

This set_klass_to_list_ptr was an especially aggregious type violation.  
Since you've touched this, can you remove these functions with your patch:

   // For when the klass pointer is being used as a linked list "next" 
field.
   inline void set_klass_to_list_ptr(oop k);
   inline oop list_ptr_from_klass();

The runtime and oops changes look good.
Coleen



>
> 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