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

JVM crash because of bad code generation

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • P2
    • 6u27
    • 6u27
    • hotspot
    • x86
    • solaris_10

    Description

      Murex detected a JVM 64-bit crash on recent JDK6 (jdk1.6.0_27, jdk1.6.0_30 and jdk1.6.0_31) on sol-x86 and Linux (works fine on Sparc). It can be reproduced with the attached files. The core stack is also attached (jvmCrash.stk).

      The code that revealed the crash is in the function 'run' hereafter. The line 'glob.getKey();' is never executed but the program doesn't crash if it is commented out.

         public void run(Glob glob) throws Exception {
            int missing = 0;
            int zero = 0;
            double[] doubles = glob.get(field);
            for (double v : doubles) {
               if (v == 0.) {
                  zero++;
               }
            }
            if (zero == scenarioCount) {
      ==> glob.getKey();
            }
         }

      Notes:
      - The crash only occurs in 64 bit mode
      - The crash happens on Solaris-x86 and Linux but *not* on Sparc
      - The tested OS are:
           * Solaris X86: Solaris 10 11/06 s10x_u3wos_10 X86
           * Linux: Linux 2.6.9-42.ELsmp #1 SMP ... Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
           * Solaris SPARC: Solaris 10 8/07 s10s_u4wos_12b SPARC
       
      How to reproduce:
      % java -d64 -cp prgMRA.jar:erm-globs.jar ProgramMRA

      If the "glob.getKey();" line is commented the crash doesn't occur, to check this, you can run the command below:
      % java -d64 -cp prgMRA.jar:erm-globs.jar ProgramMRANoCrash

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              cteissed Claude Teissedre (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                Imported:
                Indexed: