RFR: JDK-8190187: C++ code calling JNI_CreateJavaVM can be killed by Java
Adam Farley8
adam.farley at uk.ibm.com
Wed Feb 14 14:13:00 UTC 2018
Hi All,
-- Short version --
Could a committer please take the fix for JDK-8190187 (full code included
in the bug) and:
1) Complete the CSR process for the new JNI Return code.
2) Commit the changes that contain (a) the new return code, and (b) the
non-Hotspot code that handles the new code.
Backporting would be appreciated, but is optional.
Also optional: Commit the jdwp code that serves as an example for how this
code should be used. CSR again, unfortunately.
-- Long Version --
We have a bug in OpenJDK where if you pass an info-only option (like
-agentlib:jdwp=help) in through the JNI interface, it can exit your code
with RC 0.
I think this is a bug because if you planned to do anything after starting
a Java VM, you have to do it in an exit hook.
If an info-only option is used, exit(0) should not happen. Instead, the
user's code should be told the VM cannot be used.
Bug Link: https://bugs.openjdk.java.net/browse/JDK-8190187
I have proposed the creation of a new JNI return code indicating a "silent
exit", where the vm encountered no error, but that it is not in a fit
state to be used.
See the link for an implementation of this, along with a handy test.
In short, if you agree that this is a problem, we need a champion to:
1) Complete the CSR process for the new JNI Return code.
2) Commit the changes that contain (a) the new return code, and (b) the
non-Hotspot code that handles the new code.
Optionally, if you want to commit the code containing an example of the
fix, you will need to:
3) Commit the Hotspot code that channels the new return code.
4) Complete the CSR process for the jdwp behaviour change.
5) Commit the jdwp code.
Note that all of this code has *already been written*. This should be an
easy commit once the CSR is done with.
Best Regards
Adam Farley
Best Regards
Adam Farley
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
More information about the core-libs-dev
mailing list