Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8139868

CMSScavengeBeforeRemark broken after JDK-8134953

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: P3
    • Resolution: Fixed
    • Affects Version/s: 9
    • Fix Version/s: 9
    • Component/s: hotspot
    • Labels:
      None
    • Subcomponent:
      gc
    • Resolved In Build:
      b89

      Backports

        Description

        Running with -XX:+CMSScavengeBeforeRemark will do an extra call to GenCollectedHeap::do_collection() inside CMSCollector::checkpointRootsFinal().

        Inside CMSCollector::checkpointRootsFinal() we already have a valid GC id set up, but the call to GenCollectedHeap::do_collection() will create a new one using a GCIdMark, which means that when it returns the GC id is set to undefined.

        It is correct that GenCollectedHeap::do_collection() creates a new GC id since we are doing one extra GC there. But it should not reset the GC id to undefined when it is done.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                brutisso Bengt Rutisson (Inactive)
                Reporter:
                brutisso Bengt Rutisson (Inactive)
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: