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

Invalid assert(HeapBaseMinAddress > 0) in ReservedHeapSpace::initialize_compressed_heap

    XMLWordPrintable

Details

    • b09

    Backports

      Description

        See http://hg.openjdk.java.net/jdk/jdk/file/2e928420389d/src/hotspot/share/memory/virtualspace.cpp#l493

        void ReservedHeapSpace::initialize_compressed_heap(const size_t size, size_t alignment, bool large) {
        ...
          assert(HeapBaseMinAddress > 0, "sanity"); //<<<< HERE

        ==========

        # This is OK
        $ java -XX:HeapBaseMinAddress=0 -version

        # This crashes with a fastdebug JVM
        $ java -Xmx1024m -XX:HeapBaseMinAddress=0

        # To suppress the following error report, specify this argument
        # after -XX: or in .hotspotrc: SuppressErrorAt=/virtualspace.cpp:493
        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (/home/iklam/jdk/abe/open/src/hotspot/share/memory/virtualspace.cpp:493), pid=20182, tid=20183
        # assert(HeapBaseMinAddress > 0) failed: sanity

        ==========

        http://hg.openjdk.java.net/jdk/jdk/file/2e928420389d/src/hotspot/share/runtime/arguments.cpp#l1768

        There is code that ensures HeapBaseMinAddress >= DefaultHeapBaseMinAddress, but that happens only when MaxHeapSize is default, so the assert doesn't match the existing behavior.

        The JVM works just fine if we remove the assert.

        Attachments

          Issue Links

            Activity

              People

                iklam Ioi Lam
                iklam Ioi Lam
                Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved: