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

Bitmap verification sometimes fails after Full GC aborts concurrent marking

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • P4
    • Resolution: Fixed
    • 9
    • 9
    • hotspot
    • gc
    • b30

    Backports

      Description

        JDK-8048085 optimized next bitmap clear during concurrent marking by if concurrent marking has been interrupted by full gc, G1 does not reset the next mark bitmap again because full gc already does.

        The change added some assertion checking code that the next mark bitmap is clear if marking had been aborted, i.e.

              if (!cm()->has_aborted()) {
                SuspendibleThreadSetJoiner sts;
                _cm->clearNextBitmap();
              } else {
                assert(!G1VerifyBitmaps || _cm->nextMarkBitmapIsClear(), "Next mark bitmap must be clear");
              }

        This code sometimes fails after Full GC:

        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (/home/tschatzl/Downloads/vmshare/cmm-decommit/src.9/src/share/vm/gc_implementation/g1/concurrentMarkThread.cpp:286), pid=39649, tid=140275789788928
        # assert(!G1VerifyBitmaps || _cm->nextMarkBitmapIsClear()) failed: Next mark bitmap must be clear
        #
        # JRE version: Java(TM) SE Runtime Environment (9.0-b13) (build 1.9.0-ea-b13)
        # Java VM: Java HotSpot(TM) 64-Bit Server VM (1.9.0-fastdebug-internal mixed mode linux-amd64 compressed oops)
        # Failed to write core dump. Core dumps have been disabled. To enable core dumping, try "ulimit -c unlimited" before starting Java again
        #
        # If you would like to submit a bug report, please visit:
        # http://bugreport.sun.com/bugreport/crash.jsp
        #

        Can be reproduced fairly well (one out of 30 times?) with code that stresses concurrent marking a lot.

        Attachments

          Issue Links

            Activity

              People

                tschatzl Thomas Schatzl
                tschatzl Thomas Schatzl
                Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: