RFR (L): 8064702: Remove the CMS foreground collector

Kim Barrett kim.barrett at oracle.com
Thu Nov 13 21:28:50 UTC 2014


On Nov 13, 2014, at 11:11 AM, Kim Barrett <kim.barrett at oracle.com> wrote:
> 
> On Nov 13, 2014, at 2:23 AM, Bengt Rutisson <bengt.rutisson at oracle.com> wrote:
>>> ------------------------------------------------------------------------------
>>> 
>>> src/share/vm/gc_implementation/concurrentMarkSweep/concurrentMarkSweepGeneration.cpp
>>> 
>>> 1254     if (RotateCMSCollectionTypes &&
>>> 1255         (_cmsGen->debug_collection_type() !=
>>> 1256           ConcurrentMarkSweepGeneration::Concurrent_collection_type)) {
>>> 1257       assert(_cmsGen->debug_collection_type() !=
>>> 1258         ConcurrentMarkSweepGeneration::Unknown_collection_type,
>>> 1259         "Bad cms collection type");
>>> 1260       return false;
>>> 1261     }
>>> 
>>> =>
>>> 
>>> 1252     if (RotateCMSCollectionTypes) {
>>> 1253       return _cmsGen->debug_concurrent_cycle();
>>> 1254     }
>>> 
>>> I spent a large amount of time studying this change, because there are
>>> behavioral changes here that looked suspicious.  I think I've decided
>>> it's ok, but RotateCMSCollectionTypes is now badly named, and was
>>> never well described and had (and still has) unclear semantics.  I
>>> think I've puzzled out more or less what it means, but that required
>>> reading a lot of code, and I'm still not confident that I know what
>>> would happen if I used it, or why I might want to.
>> 
>> Right. I agree that it is unclear if this code is needed. I have never been running with RotateCMSCollectionTypes but I did not want to remove it as part of this change.
>> 
>> […]
>> 
>> I do agree that the naming is bad. But if we decide to remove this functionality there is not much need to spend time on the naming discussion.
> 
> My inclination would be to remove it. […]

Just to be clear, I’m ok with deferring removal to a later task.  Please file a bug report…



More information about the hotspot-gc-dev mailing list