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

JVMDI: ResumeThread() for non-thread object causes java crash

XMLWordPrintable

    • generic
    • generic



      Name: icC57033 Date: 02/16/2000


      The Classic VM 1.3.0rc1-U for win32 and Solaris fails the test
      nsk/jvmdi/ResumeThread/resumethrd002
      from
      testbase_nsk

      To reproduce the bug run Korn shell script
      doit.ksh <jdk_root_directory>
      in
      /net/sqesvr/vsn/GammaBase/Bugs/<this bug number>

      The script produces the output:
      java version "1.3.0rc1"
      Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0rc1-U)
      Java HotSpot(TM) Client VM (build 1.3.0rc1-T, interpreted mode)
      -------------------------- java ---------------------------------
      Setting resumethrd002_EventHook as event hook.
      ######## JVMDI_EVENT_VM_INIT ########
      #
      # HotSpot Virtual Machine Error, Unexpected Signal 11
      #
      # Error ID: 4F533F534F4C415249530E43505007B2 01
      #
      exit 1
      -------------------------- java_g -------------------------------
      Setting resumethrd002_EventHook as event hook.
      ######## JVMDI_EVENT_VM_INIT ########
      #
      # HotSpot Virtual Machine Error, Unexpected Signal 11
      #
      # occurred at pc=fe393b4c
      #
      # Error ID:
      /usr/re/hotsparc_client1.3/ws/solsparc/hotsparc_client1.3fcs/build/solaris/../..
      /src/os/solaris/vm/os_solaris.cpp, 1970 [ Patched ]
      #
      Dumping core....
      ../doit.ksh[48]: 10985 Abort
      exit 134
      -------------------------- java -classic ------------------------
      Setting resumethrd002_EventHook as event hook.
      ######## JVMDI_EVENT_VM_INIT ########
      SIGSEGV 11* segmentation violation
          si_signo [11]: SIGSEGV 11* segmentation violation
          si_errno [0]: Error 0
          si_code [1]: SEGV_MAPERR [addr: 0x4]

              stackpointer=ffbedac8

      Full thread dump Classic VM (1.3.0rc1-U, green threads):
          "Finalizer" (TID:0xfb898528, sys_thread_t:0x6c730, state:CW) prio=8
              at java.lang.Object.wait(Native Method)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:108)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:123)
              at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:162)
          "Reference Handler" (TID:0xfb898300, sys_thread_t:0x626d0, state:CW) prio=10
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:420)
              at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:110)
          "Signal dispatcher" (TID:0xfb898330, sys_thread_t:0x66730, state:CW) prio=5
          "main" (TID:0xfb8981a0, sys_thread_t:0x26380, state:R) prio=5
              at resumethrd002.resumethrd002ResumeThread(Native Method)
              at resumethrd002.tryallsusp(resumethrd002.java:70)
              at resumethrd002.run(resumethrd002.java:30)
              at resumethrd002.main(resumethrd002.java:24)
      Monitor Cache Dump:
          java.lang.ref.ReferenceQueue$Lock@FB898540/FB8CE7A8: <unowned>
              Waiting to be notified:
                  "Finalizer" (0x6c730)
          java.lang.ref.Reference$Lock@FB898310/FB8CE2B0: <unowned>
              Waiting to be notified:
                  "Reference Handler" (0x626d0)
      Registered Monitor Dump:
          utf8 hash table: <unowned>
          JNI pinning lock: <unowned>
          JNI global reference lock: <unowned>
          BinClass lock: <unowned>
          Class linking lock: <unowned>
          System class loader lock: <unowned>
          Code rewrite lock: <unowned>
          Heap lock: <unowned>
          Monitor cache lock: owner "main" (0x26380) 1 entry
          Dynamic loading lock: <unowned>
          Monitor IO lock: <unowned>
          User signal monitor: <unowned>
              Waiting to be notified:
                  "Signal dispatcher" (0x66730)
          Child death monitor: <unowned>
          I/O monitor: <unowned>
          Alarm monitor: <unowned>
              Waiting to be notified:
                  <unknown thread> (0x27250)
          Thread queue lock: owner "main" (0x26380) 2 entries
          Monitor registry: owner "main" (0x26380) 1 entry

      SIGABRT 6* abort (generated by abort(3) routine)
          si_signo [6]: SIGABRT 6* abort (generated by abort(3) routine)
          si_errno [0]: Error 0
          si_code [0]: SI_USER [pid: 10995, uid: 1174]
              stackpointer=ffbedac8

      Full thread dump Classic VM (1.3.0rc1-U, green threads):
          "Finalizer" (TID:0xfb898528, sys_thread_t:0x6c730, state:CW) prio=8
              at java.lang.Object.wait(Native Method)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:108)
              at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:123)
              at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:162)
          "Reference Handler" (TID:0xfb898300, sys_thread_t:0x626d0, state:CW) prio=10
              at java.lang.Object.wait(Native Method)
              at java.lang.Object.wait(Object.java:420)
              at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:110)
          "Signal dispatcher" (TID:0xfb898330, sys_thread_t:0x66730, state:CW) prio=5
          "main" (TID:0xfb8981a0, sys_thread_t:0x26380, state:R) prio=5
              at resumethrd002.resumethrd002ResumeThread(Native Method)
              at resumethrd002.tryallsusp(resumethrd002.java:70)
              at resumethrd002.run(resumethrd002.java:30)
              at resumethrd002.main(resumethrd002.java:24)
      Monitor Cache Dump:
          java.lang.ref.ReferenceQueue$Lock@FB898540/FB8CE7A8: <unowned>
              Waiting to be notified:
                  "Finalizer" (0x6c730)
          java.lang.ref.Reference$Lock@FB898310/FB8CE2B0: <unowned>
              Waiting to be notified:
                  "Reference Handler" (0x626d0)
      Registered Monitor Dump:
          utf8 hash table: <unowned>
          JNI pinning lock: <unowned>
          JNI global reference lock: <unowned>
          BinClass lock: <unowned>
          Class linking lock: <unowned>
          System class loader lock: <unowned>
          Code rewrite lock: <unowned>
          Heap lock: <unowned>
          Monitor cache lock: owner "main" (0x26380) 1 entry
          Dynamic loading lock: <unowned>
          Monitor IO lock: <unowned>
          User signal monitor: <unowned>
              Waiting to be notified:
                  "Signal dispatcher" (0x66730)
          Child death monitor: <unowned>
          I/O monitor: <unowned>
          Alarm monitor: <unowned>
              Waiting to be notified:
                  <unknown thread> (0x27250)
          Thread queue lock: owner "main" (0x26380) 2 entries
          Monitor registry: owner "main" (0x26380) 1 entry

      ../doit.ksh[52]: 10995 Abort
      exit 134

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

            Unassigned Unassigned
            ichebykisunw Igor Chebykin (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: