RFR: 8253916: ResourceExhausted/resexhausted001 crashes on Linux-x64 [v2]

David Holmes dholmes at openjdk.java.net
Wed Dec 2 02:04:05 UTC 2020


On Tue, 1 Dec 2020 14:16:14 GMT, Coleen Phillimore <coleenp at openjdk.org> wrote:

>> Give an error message rather than logging the error and then crashing later because the JVM can't detect stack overflow.  In a resource exhausted situation, thread creation is also failing.  This is the vm_exit_out_of_memory message printed:
>> 
>> `$ java -XX:+UseNewCode -version
>> [0.003s][warning][os,thread] Attempt to protect stack guard pages failed (0x00007f606b249000-0x00007f606b24d000).
>> 
>>  There is insufficient memory for the Java Runtime Environment to continue.
>>  Native memory allocation (mprotect) failed to protect 16384 bytes for memory to guard stack pages
>>  An error report file with more information is saved as:
>>  /16mprotect/hs_err_pid30596.log`
>> `
>
> Coleen Phillimore has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
> 
>  - Merge branch 'master' into mprotect
>  - Made resexhaused001.004 manual tests.  You can't reliably run these tests.
>  - 8253916: ResourceExhausted/resexhausted001 crashes on Linux-x64

I'm okay with the functional change here, to do vm_exit_oom when guard page creation fails.

I'm not sure about the test change. It was only problem-listed on Linux but now is "manual" on all platforms and so will now be excluded from automated testing on all platforms.

-------------

Marked as reviewed by dholmes (Reviewer).

PR: https://git.openjdk.java.net/jdk/pull/1540


More information about the serviceability-dev mailing list