| Relates :   | |
| Relates :   | |
| Relates :   | 
Port the JVM/DI tests from the following bug fix to JVM/TI:
    JDK-4413752 Linux: suspended thread blocks raw ObjectMonitor entry
Here are the test source file names:
$ ls -l *.c *.java
-r--r--r--  1 dcubed  green  11808 Feb 12  2001 di4413752.c
-r--r--r--  1 dcubed  green  10212 Feb 16  2001 di4413752.java
-r--r--r--  1 dcubed  green   9788 Mar 23  2001 dijava4413752.c
-r--r--r--  1 dcubed  green  10285 Mar 23  2001 dijava4413752.java
-r--r--r--  1 dcubed  green  11045 Feb 14  2001 diobj4413752.c
-r--r--r--  1 dcubed  green  10459 Feb 16  2001 diobj4413752.java
-r--r--r--  1 dcubed  green  10612 Feb 16  2001 diwait4413752.c
-r--r--r--  1 dcubed  green   8182 Feb 16  2001 diwait4413752.java
-r--r--r--  1 dcubed  green   4406 Feb 12  2001 pi4413752.c
-rw-r--r--  1 dcubed  green   9809 Aug 25  2005 pi4413752.java
-r--r--r--  1 dcubed  green   3678 Feb 13  2001 piobj4413752.c
-rw-r--r--  1 dcubed  green   9823 Aug 25  2005 piobj4413752.java
-r--r--r--  1 dcubed  green   3296 Feb 16  2001 piwait4413752.c
-rw-r--r--  1 dcubed  green   8123 Aug 25  2005 piwait4413752.java
There were two different APIs families that needed testing back then: JVM/DI and JVM/PI.
Within both API families, we needed to test a couple of different API combinations:
- RawMonitorEnter() with SuspendThread()
  - di4413752.java and di4413752.c
  - pi4413752.java and piwait4413752.c
- ObjectMonitor enter() with SuspendThread()
  - diobj4413752.java and diobj4413752.c
  - piobj4413752.java and piobj4413752.c
- ObjectMonitor wait() with SuspendThread
  - diwait4413752.java and diwait4413752.c
  - piwait4413752.java and piwait4413752.c
- ObjectMonitor enter() with java.lang.Thread.suspend()
  - dijava4413752.java and dijava4413752.c
  - looks like I didn't write JVM/Pi versions of this test
JVM/DI and JVM/PI were replaced by JVM/TI so only these API combinations
need porting:
- RawMonitorEnter() with SuspendThread()
  - test/hotspot/jtreg/serviceability/jvmti/SuspendWithRawMonitorEnter/SuspendWithRawMonitorEnter.java
  - test/hotspot/jtreg/serviceability/jvmti/SuspendWithRawMonitorEnter/libSuspendWithRawMonitorEnter.cpp
- ObjectMonitor enter() with SuspendThread()
  - test/hotspot/jtreg/serviceability/jvmti/SuspendWithObjectMonitorEnter/SuspendWithObjectMonitorEnter.java
  - test/hotspot/jtreg/serviceability/jvmti/SuspendWithObjectMonitorEnter/libSuspendWithObjectMonitorEnter.cpp
- ObjectMonitor wait() with SuspendThread
  - test/hotspot/jtreg/serviceability/jvmti/SuspendWithObjectMonitorWait/SuspendWithObjectMonitorWait.java
  - test/hotspot/jtreg/serviceability/jvmti/SuspendWithObjectMonitorWait/libSuspendWithObjectMonitorWait.cpp
ObjectMonitor enter() with java.lang.Thread.suspend() doesn't need porting because
that API is deprecated.
| 
 |