RFC: 6898462: The escape analysis with G1 cause crash assertion src/share/vm/runtime/vframeArray.cpp:94
John Rose
john.r.rose at oracle.com
Wed Dec 3 00:20:08 UTC 2014
Thanks. Nice work!
Using obj==null as a sentinel for failed allocation is good. Then the flag becomes mostly an extra assertion predicate, which is much safer than having the extra state variable.
I have only cosmetic comments at this point.
I suggest moving the line "+ if (realloc_failures) {" outside of the call to 'handle_failed_reallocs', and removing the parameter. Also, suggest s/handle_failed_reallocs/pop_frames_failed_realloc/, to more specifically tie it to the frame-popping logic (Thread::frames_to_pop_failed_realloc).
(Maybe also s/frames_to_pop_failed_realloc/pop_frames_failed_realloc/, to strengthen the correspondence; not sure about that one.)
— John
> On Dec 2, 2014, at 1:26 AM, Roland Westrelin <roland.westrelin at oracle.com> wrote:
>
>> Please file a follow-up RFE to consider reserving memory for OOME exception processing. (Cold, never-used memory would be reserved to recharge a thread's TLAB in some TBD gated manner, to allow catch clauses a better chance to complete.) I'm not saying we have to do this, but we want to be ready if a use case comes up.
>
> The follow up RFE is https://bugs.openjdk.java.net/browse/JDK-8066400
>
> Roland.
More information about the hotspot-compiler-dev
mailing list