OpenJDK6 changes for JDI. I'm ready to push.
I would like approvals from Joe, Jim, Alan, Dan, and Tim. In the process of trying to get good test results running the openjdk6 debugger (JDI) and jvmti tests (com/sun/jdi and demo/jvmti), I kept running into fixes made in jdk7 that were not in jdk6. Since this functionality and apis are still jdk6, I took the liberty of porting all of the openjdk7 JDI changes and JDI test changes to openjdk6. These changes have all been reviewed for jdk7, and with a few minor exceptions (i.e. -target 7 -source -7 in a few places) the resulting files in openjdk6 now match openjdk7. Please speak up if you have objections to this. The openjdk6 com/sun/jdi tests are stable now, however for some reason I am unable to run them with 'jtreg -samevm', but all indications are that this is unrelated to the JDI tests themselves (the same tests run fine with -samevm in openjdk7). The jtreg -samevm runs fail with a jtreg error: Error. Error while cleaning up threads after test and it is unpredictable as to what testcase it will happen with. I'll investigate this again after the openjdk6 version of hotspot is updated (I think it has 14.0 right now), I'm suspecting a hotspot fix in 14.2 regarding threads might solve this (6772683, but that's a guess). Here is the complete webrev: http://cr.openjdk.java.net/~ohair/openjdk6/jdk6-serviceability-update/webrev/ One changeset contains several bugs because the changes to the files overlapped so much. I tried to selectively bring in changesets from jdk7 as I needed them, only realizing toward the end that I really needed all changesets related to JDI to get it right. Here is the complete bug list: 6263966: TEST: com/sun/jdi/ClassesByName2Test.java has a race 6432567: PIT : com/sun/jdi/BadHandshakeTest.java fails due to java.net.ConnectException 6529758: JVMTI Waiters demo crashes. Double free. 6614052: jhat fails to read heap dump >2GB 6646613: ClassPrepareRequest.addSourceNameFilter() does not behave as documented 6700889: Thread resume invalidates all stack frames, even from other threads 6701700: MonitorInfo objects aren't invalidated when the owning thread is resumed 6725543: Compiler warnings in serviceability native code 6730273: TEST: JDI_REGRESSION test Solaris32AndSolaris64Test.sh fails if -XX:+UseCompressedOops is used 6737900: TEST: Some JDI regression tests timeout on slow machines 6751643: ThreadReference.ownedMonitors() can return null 6787605: OpenSolaris doesn't have /usr/ucb/ps so ShellScaffold fails 6855180: Fix classfile version check in java_crw_demo 6855551: java -Xrunhprof crashes when running with classes compiled with targed=7 6888927: Fix jdk jtreg tests to indicate which ones need othervm, allow for use of samevm option 6892742: Improve root set used by jhat 6893426: ShellScaffold.sh fails on Solaris 10 update releases: /usr/bin/id: illegal option -- u 6899444: Fix demo/jvmti tests so they can run in jtreg samevm mode, cleanup problemlist 6902323: Fix testcase sun/tools/native2ascii/NativeErrors.java 6902325: Fix testcase sun/tools/jhat/HatHeapDump1Test.java 6902667: Fix JT_HOME not working from env in jdk/test/Makefile 6903102: 3/3 fixes in nightly testing version of ShellScaffold.sh need to be committed 6904183: Fix jdk/test/com/sun/jdi tests to run with -samevm 6905705: Fix broken exit code values in jdk/test/Makefile 6906210: Fix another minor typo in test/Makefile -kto