RFR: 8287812: Cleanup JDWP agent GetEnv initialization
Chris Plummer
cjplummer at openjdk.org
Thu Dec 8 23:31:09 UTC 2022
3 things to cleanup in this area:
(1) The JDWP agent uses `JNI GetEnv(JVMTI_VERSION_1)` to get a JVMTI environment. If `GetEnv` fails the JDWP agent prints this:
`ERROR: JDWP unable to access JVMTI Version 1 (0x30010000), is your J2SE a 1.5 or newer version? JNIEnv's GetEnv() returned -3`
The text "is your J2SE a 1.5 or newer version?" dates from JDK 5 when JVMTI was introduced and doesn't make sense now.
(2) `JVMTI_VERSION_1` suggests that the JDWP agent is looking for a JVMTI v1 environment when it really wants the latest. `GetEnv` should request `JVMTI_VERSION` so that it always requests the current version.
(3) There is some outdated compatibility checking between runtime and compile time versions of JVMTI that date back to the 1.0, 1.1, and 1.2 era, and are no longer needed.
-------------
Commit messages:
- Cleanup JVMTI GenEnv() usage.
Changes: https://git.openjdk.org/jdk/pull/11602/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=11602&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8287812
Stats: 47 lines in 2 files changed: 11 ins; 31 del; 5 mod
Patch: https://git.openjdk.org/jdk/pull/11602.diff
Fetch: git fetch https://git.openjdk.org/jdk pull/11602/head:pull/11602
PR: https://git.openjdk.org/jdk/pull/11602
More information about the serviceability-dev
mailing list