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

class data sharing does not always disable large pages

    Details

    • Subcomponent:
    • Resolved In Build:
      b04
    • CPU:
      generic, x86
    • OS:
      generic
    • Verification:
      Verified

      Backports

        Description

        Please note that test crashes only when VM uses shared classes.
        Here is the VM output:
        # To suppress the following error report, specify this argument
        # after -XX: or in .hotspotrc: SuppressErrorAt=/genCollectedHeap.cpp:181
        #
        # A fatal error has been detected by the Java Runtime Environment:
        #
        # Internal Error (/tmp/jprt/P2/B/191811.ap31282/source/src/share/vm/memory/genCollectedHeap.cpp:181), pid=2328, tid=2
        # Error: assert(total_reserved % pageSize == 0,"Perm Gen size")
        #
        # JRE version: 7.0-b73
        # Java VM: Java HotSpot(TM) Client VM (17.0-b01-2009-10-03-191811.ap31282.hs-merge-fastdebug mixed mode, sharing solaris-x86 )
        # An error report file with more information is saved as:
        # /export/local/22430.JDK7.NIGHTLY.VM+solaris-i586_client_mixed_LANG_REGRESSION/results/workDir/java/lang/StringCoding/Enormous/hs_err_pid2328.log
        #
        # If you would like to submit a bug report, please visit:
        # http://java.sun.com/webapps/bugreport/crash.jsp
        #


        Here is the link to the failure report:
        http://sqeweb.sfbay.sun.com/nfs/results/vm/gtee/JDK7/NIGHTLY/VM/2009-10-03/Main_Baseline/javase/solaris-i586/client/mixed/solaris-i586_client_mixed_LANG_REGRESSION/workDir/java/lang/StringCoding/Enormous/

        The hs_err is in the attachment.
        In fact,
        java -Xmx128M -version
        crashes too (with fast debug build and class data sharing).
        To reproduce on a solaris intel:

        # Ensure that 4MiB large pages are available:
        $ pagesize -a
        4096
        4194304
        # Generate the classes.jsa file with large pages disabled.
        $ bin/java -client -XX:+UseSerialGC -Xshare:dump -XX:-UseLargePages
        # Run the vm with large page size of 4MiB.
        # bin/java -client -XX:+UseSerialGC -XX:+UseLargePages -XX:LargePageSizeInBytes=4m -version

        On solaris sparc, a large page size > 4MiB must be used because the default page size is 8K.

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  jcoomes John Coomes
                  Reporter:
                  lmesnik Leonid Mesnik
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  1 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved:
                    Imported:
                    Indexed: