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

TTY: kill001 test crashes the debuggee VM

XMLWordPrintable

    • generic
    • generic

      Name: dkR10014 Date: 03/12/2002


      Build: 1.4.1-beta-b03
      Test: nsk/jdb/kill/kill001
      Platform: Solsparc, Solx86, Win, Linux
      Debuggee VM: Client, Server
      Debuggee VM mode: -Xmixed, -Xint, -Xcomp

      The test checks jdb's 'kill <thread_id> <exception_object>' command.

      The test consists of two programs:
       kill001.java - launches jdb and debuggee VM, writes command to jdb,
       kill001a.java - the debugged application.

      The debugged application creates a number of additional threads with
      the names like "MyThread-<number>" and starts them. The jdb suspends
      the debuggee at a moment after additional threads have started and
      then kills them.

      The debuggee VM crashes with core dump when it is resumed with jdb "cont"
      command after killing of additional theads.

      Below is jdb stdout log redirected to jdb.stdout file.
      ------------------------------------------------------------------
      Initializing jdb ...
      >
      <<COMMAND>>stop in nsk.jdb.kill.kill001a.main

      Deferring breakpoint nsk.jdb.kill.kill001a.main.
      It will be set after the class is loaded.
      >
      <<COMMAND>>run

      run nsk.jdb.kill.kill001a
      >
      VM Started: Set deferred breakpoint nsk.jdb.kill.kill001a.main

      Breakpoint hit: "thread=main", nsk.jdb.kill.kill001a.main(), line=16 bci=0

      main[1]
      <<COMMAND>>stop in nsk.jdb.kill.kill001a.breakHere

      Set breakpoint nsk.jdb.kill.kill001a.breakHere
      main[1]
      <<COMMAND>>cont

      > Thread started: MyThread-0
      Thread started: MyThread-1
      Thread started: MyThread-2
      Thread started: MyThread-3
      Thread started: MyThread-4

      Breakpoint hit: "thread=main", nsk.jdb.kill.kill001a.breakHere(), line=20 bci=0

      main[1]
      <<COMMAND>>threads

      Group system:
        (java.lang.ref.Reference$ReferenceHandler)0x105 Reference Handler cond. waiting
        (java.lang.ref.Finalizer$FinalizerThread)0x104 Finalizer cond. waiting
        (java.lang.Thread)0x103 Signal Dispatcher running
      Group main:
        (java.lang.Thread)0x1 main running (at breakpoint)
        (java.util.logging.LogManager$Cleaner)0x15c Thread-0 unknown
        (nsk.share.Finalizer$FinalizerThread)0x15d Thread-1 unknown
        (nsk.jdb.kill.MyThread)0x155 Thread-2 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x156 Thread-3 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x157 Thread-4 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x158 Thread-5 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x159 Thread-6 waiting in a monitor
      main[1]
      <<COMMAND>>kill 0x155 nsk.jdb.kill.kill001a.exceptions[0]

      killing thread: Thread-2
      main[1] instance of nsk.jdb.kill.MyThread(name='Thread-2', id=341) killed
      main[1]
      <<COMMAND>>kill 0x156 nsk.jdb.kill.kill001a.exceptions[1]

      killing thread: Thread-3
      main[1] instance of nsk.jdb.kill.MyThread(name='Thread-3', id=342) killed
      main[1]
      <<COMMAND>>kill 0x157 nsk.jdb.kill.kill001a.exceptions[2]

      killing thread: Thread-4
      main[1] instance of nsk.jdb.kill.MyThread(name='Thread-4', id=343) killed
      main[1]
      <<COMMAND>>kill 0x158 nsk.jdb.kill.kill001a.exceptions[3]

      killing thread: Thread-5
      main[1] instance of nsk.jdb.kill.MyThread(name='Thread-5', id=344) killed
      main[1]
      <<COMMAND>>kill 0x159 nsk.jdb.kill.kill001a.exceptions[4]

      killing thread: Thread-6
      main[1] instance of nsk.jdb.kill.MyThread(name='Thread-6', id=345) killed
      main[1]
      <<COMMAND>>threads

      Group system:
        (java.lang.ref.Reference$ReferenceHandler)0x105 Reference Handler cond. waiting
        (java.lang.ref.Finalizer$FinalizerThread)0x104 Finalizer cond. waiting
        (java.lang.Thread)0x103 Signal Dispatcher running
      Group main:
        (java.lang.Thread)0x1 main running (at breakpoint)
        (java.util.logging.LogManager$Cleaner)0x15c Thread-0 unknown
        (nsk.share.Finalizer$FinalizerThread)0x15d Thread-1 unknown
        (nsk.jdb.kill.MyThread)0x155 Thread-2 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x156 Thread-3 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x157 Thread-4 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x158 Thread-5 waiting in a monitor
        (nsk.jdb.kill.MyThread)0x159 Thread-6 waiting in a monitor
      main[1]
      <<COMMAND>>cont
      #
      # HotSpot Virtual Machine Error, Internal Error
      # Please report this error at
      # http://java.sun.com/cgi-bin/bugreport.cgi
      #
      # Java VM: Java HotSpot(TM) Client VM (1.4.1-beta-b03 mixed mode)
      #
      # Error happened during: generation collection for allocation
      #
      # Error ID: 47454E45524154452F4F502D41500E4350500824 01
      #
      # Problematic Thread: prio=5 tid=0x1b46c0 nid=0xe runnable
      #
      The application has been disconnected
      ------------------------------------------------------------------


      The test being run with java_g makes following error message in jdb.stdout file:
      #
      # HotSpot Virtual Machine Error, assertion failure
      # Please report this error at
      # http://java.sun.com/cgi-bin/bugreport.cgi
      #
      # Java VM: Java HotSpot(TM) Client VM (1.4.1-beta-b03-debug mixed mode)
      #
      # assert(bb->is_reachable(), "getting result from unreachable basicblock")
      #
      # Error happened during: generation collection for allocation
      #
      # Error ID: /BUILD_AREA/jdk1.4.1/hotspot/src/share/vm/oops/generateOopMap.cpp, 2141 [ Patched ]
      #
      # Problematic Thread: prio=5 tid=0x1e2d90 nid=0xe runnable
      #
      Dumping core....


      ------------------------------------------------------------------
         
      How to reproduce:
       1. cd /net/sqesvr.sfbay/export/vsn/GammaBase/Bugs/{this_bug_number}
       2. sh doit.sh <JAVA_HOME> <JAVA_EXECUTABLE> <VM_OPTIONS>

       where <JAVA_EXECUTABLE> must be java or java_g,
        <VM_OPTIONS> are optional parameters for debuggee VM.

      The test will appear in the next testbase_nsk r13 release.

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

            myangsunw Mingyao Yang (Inactive)
            kdossunw Kdos Kdos (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: