On Dec 16, 2010, at 4:11 PM, Alan Bateman wrote:

Keith McGuigan wrote:

:
Ok, here's a new webrev: http://cr.openjdk.java.net/~kamg/6436034/webrev.01/

I added a regression test and modified the code in debugInit.cpp to explicitly allow running with JVMTI 1.1 if that's what the JVM supports. The regression test is setup to pass when run with a JVM less than version 20 build 05 (where the new JVMTI function is added), so it should run and pass in either situation and won't require a later update.
The only concern is that it sets a new precedent and so may force further enhancements to do version checks when they require a JVMTI function added in 1.2 or later. Personally, I wouldn't object to the JDWP agent requiring >= 1.2 and keeping things simple.

I like the flexibility of being able to swap in/out different JVMs -- be it earlier versions of Hotspot or something else that maybe doesn't yet support JVMTI 1.2. Having the code written this way also makes it easier to port this code verbatim into other JDK codebases (jdk6?) if it's required. I understand this is different than things were done in the past, but I don't think HSX was around the last time the JVMTI version was updated either. Decoupling the JDK from the JVM as much as possible is a good thing in my opinion. We can discuss this further (offline?) if I'm not convincing enough yet :)

So for the test, do you plan to remove the jvmSupportsJVMTI_1_2 method once hs20-b05 makes it into a promoted build?

I was not planning on it, but we could. My intent was to write the test so that I wouldn't have to change it again!

--
- Keith

Reply via email to