On 13/10/2017 13:16, Adam Farley8 wrote:
Hi All,
Here's a summary of the email below (which is intended, partly, as a
summary of the emails before it).
Let me know if you agree/disagree with any of these points.
:
3) One solution is to specify a new return code for JNI.
Yes, hence the need to update the JNI spec. A discussion point to add to
your point #10 is the return code value as the JNI spec uses negative
values for errors.
6) To implement this new return code, plus the code that handles it,
we would need to follow the CSR process.
Yes, a CSR will be needed if this goes ahead as it will need changes to
both the JNI and JVM TI specs.
7) To implement the fix for the scenario used as an example of the new
return code's use, we would need to modify the JVM TI spec.
Yes, because the JVM TI spec is very clear that the Agent_OnLoad
returning a non-0 value is an error that terminates the VM.
8) To address all of the worst instances of exit(#), we would need to
search for exit(#) and raise a bug for each significant one (or group).
In the discussion to date then I think there is an acknowledgement that
there are issues in hotspot for several error or resource exhaustion
cases that would need a lot of work to recover from. I don't think there
was any suggestion that they would need to be addressed or even
identified as part of deciding if the agent "-help" scenario is worth
trying to support.
-Alan