RFR: 8295724: VirtualMachineError: Out of space in CodeCache for method handle intrinsic [v2]
Martin Doerr
mdoerr at openjdk.org
Thu Nov 3 16:31:30 UTC 2022
On Wed, 2 Nov 2022 22:28:40 GMT, Martin Doerr <mdoerr at openjdk.org> wrote:
>> This proposal prevents the VM from terminating unexpectedly in some rare cases (see JBS issue). It allows using NonNMethod code space for method handle intrinsics which are needed urgently if the other code cache spaces are full. There are other options (see JBS issue), but this one appears to be the simplest one.
>
> Martin Doerr has updated the pull request incrementally with one additional commit since the last revision:
>
> Add assertions to ensure no immediate oops in MH intrinsics.
Thanks for all your interesting thoughts. But now, I think we're discussing too many things in one PR.
I suggest the following:
- New issue for the Loom intrinsics. We just need 2 native functions, so they could just get created at startup if there's a concern.
- New issue for C2I investigation. We may need to generate adapters in the NonNMethod space. Isn't that a similar problem?
- Discuss further if this PR is a viable solution for the method handle intrinsic issue in JDK 20. They get created per signature, so it's hard to generate all ones :-) I wouldn't expect an insane amount, so a bit of NonNMethod space can hopefully take as much as needed. If there are more concerns, we could still wait for GC.
- I'd like to try implementing a reproduction case, but I can't promise if I can get that done before RDP1. There's a lot to do atm. Could we add it later if it takes too long?
-------------
PR: https://git.openjdk.org/jdk/pull/10933
More information about the hotspot-compiler-dev
mailing list