RFR: 8298128: runtime/ErrorHandling/TestSigInfoInHsErrFile.java fails to find pattern with slowdebug [v4]

Thomas Stuefe stuefe at openjdk.org
Tue Jan 10 12:16:52 UTC 2023


On Tue, 10 Jan 2023 11:57:22 GMT, Afshin Zafari <duke at openjdk.org> wrote:

>> ### Description
>> The following problems found and solved:
>> 
>> 1) Reporting which regex pattern did not match with error messages was incorrect. To report the mismatched pattern, the head of the pattern list was peeked, while it was the already peeked item from that did not match. So the next pattern to the mismatched one was reported.
>> 
>> 2) The pattern for finding a crash was incorrectly set to "# .*VMError::controlled_crash.*", while it has to be "# .*crash_with_segfault.*".
>> 
>> 3) `crash_with_segfault` function is too small and was `inline`d in compiler optimisations. So it was not in the stack trace when the error message is created.
>> 
>> ### Patch
>> 1 and 2 corrected and added the `NOINLINE` to  the `crash_with_segfault` signature. The same applied for `crash_with_sigfpe` function.
>> 
>> ### Test
>> runtime/ErrorHandling/* and tier1-5
>
> Afshin Zafari has updated the pull request incrementally with one additional commit since the last revision:
> 
>   8298128: runtime/ErrorHandling/TestSigInfoInHsErrFile.java fails to find pattern with slowdebug

@afshin-zafari, thank you for finding and fixing this.

I worry that this may be too fragile, since it depends on linker hints that AFAIK the linker could ignore. Could we instead match with something like `"# .*(VMError::controlled_crash|crash_with).*"`?

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

PR: https://git.openjdk.org/jdk/pull/11704


More information about the hotspot-dev mailing list