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

nested constructor calls with many arguments cause VM crash in native mode

XMLWordPrintable

    • 1.2beta2
    • sparc
    • solaris_2.5.1
    • Verified



      Name: laC46010 Date: 11/04/97



      The following JCK-12ea2 test cases cause JVM (jdk1.2S) core dump on
      Solaris in native-thread mode:

      lang/CLSS/clss201/clss20101/clss20101.html # added by wes@eng 11/5/97
      lang/CLSS/clss212/clss21201/clss21201.html
      lang/CLSS/clss212/clss21202/clss21202.html

      The tests use about 100 nested constructor calls with many arguments.
      Possibly java stack is overflowed, however -oss1000000 doesn't help.

      Note that jdk1.1.4, 1.1.5 and 1.2Q work fine on these tests.

      See an excerpt from .jtr file:

      call: javasoft.sqe.harness.lib.ExecJCKTestOtherJVMCmd CLASSPATH=/net/tapas/export1/testexec/results/s2anticline12enative_251/classes:/net/tapas/export1/testexec/JCK-12e/tests/../classes DISPLAY=anticline:0.0 /net/tapas/export1/testexec/jdk12s/solaris/bin/java -native -verify javasoft.sqe.tests.lang.clss212.clss21202.clss21202
      command result: Failed. unexpected exit code: exit code 6
      ----------ref:execute(0/0)----------
      ----------log:execute(56/3216)----------
      SIGSEGV 11* segmentation violation
          si_signo [11]: SIGSEGV 11* segmentation violation
          si_errno [0]: Error 0
          si_code [1]: SEGV_MAPERR [addr: 0xfe0b0]

      stackbase=F0000000, stackpointer=EFFFEE94

      Full thread dump:
          "CachedReference sweeper" (TID:0xed300d30, sys_thread_t:0x6e300, state:CW, thread_t: t@7, sp:0x0, stack_bottom:0xeeb02000, stack_size:0x21000) prio=9
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:308)
      at java.lang.Runtime.waitForMemoryAdvice(Runtime.java:566)
      at java.lang.ref.CachedReference$Sweeper.run(CachedReference.java:278)
      at java.lang.Thread.run(Thread.java:470)
          "Finalizer" (TID:0xed300320, sys_thread_t:0x63de8, state:CW, thread_t: t@6, sp:0x0, stack_bottom:0xeeb32000, stack_size:0x21000) prio=8
      at java.lang.Object.wait(Native Method)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:85)
      at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:99)
      at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:132)
          "Reference handler" (TID:0xed3003d0, sys_thread_t:0x5f978, state:CW, thread_t: t@5, sp:0x0, stack_bottom:0xeebb2000, stack_size:0x21000) prio=10
      at java.lang.Object.wait(Native Method)
      at java.lang.Object.wait(Object.java:308)
      at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:197)
          "SIGQUIT handler" (TID:0xed300038, sys_thread_t:0x55510, state:R, thread_t: t@4, sp:0x0, stack_bottom:0xef3f2000, stack_size:0x21000) prio=0
          "main" (TID:0xed300068, sys_thread_t:0x21420, state:R, thread_t: t@1, sp:0x0, stack_bottom:0xf0000000, stack_size:0x800000) prio=5 *current thread*
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:138)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:134)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:130)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:126)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:122)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:118)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:114)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202_a.<init>(clss21202.java:110)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202.run(clss21202.java:523)
      at javasoft.sqe.tests.lang.clss212.clss21202.clss21202.main(clss21202.java:511)
      Monitor Cache Dump:
          java.lang.ref.Reference$Lock@ED3003E0/ED353E50: <unowned>
      Waiting to be notified:
      "Reference handler" (0x5f978)
          java.lang.Object@ED300560/ED354798: <unowned>
      Waiting to be notified:
      "CachedReference sweeper" (0x6e300)
          java.lang.ref.ReferenceQueue$Lock@ED300330/ED3544C8: <unowned>
      Waiting to be notified:
      "Finalizer" (0x63de8)
      Registered Monitor Dump:
          utf8 hash table: <unowned>
          JNI pinning lock: <unowned>
          JNI global reference lock: <unowned>
          BinClass lock: <unowned>
          Class linking lock: <unowned>
          Code rewrite lock: <unowned>
          Heap lock: <unowned>
          Monitor cache expansion lock: <unowned>
          Thread queue lock: <unowned>
          Monitor registry: owner "main" (0x21420, 1 entry)
      test result: Failed. unexpected exit code: exit code 6


      Hook 5(hook5): test

      ======================================================================

            never Tom Rodriguez
            leosunw Leo Leo (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: