RFR: 8302798: Refactor -XX:+UseOSErrorReporting for noreturn crash reporting

Thomas Stuefe stuefe at openjdk.org
Wed Mar 1 21:03:25 UTC 2023


On Mon, 27 Feb 2023 12:27:56 GMT, David Holmes <dholmes at openjdk.org> wrote:

> > So ... this approach skips the VM error reporting and goes straight to WER?
> 
> Strike that - no it doesn't. Okay I have to admit I'm not at all clear on what the existing unwinding process actually looks like, and how the new fix affects that.

I don't think there is unwinding as we know it (calling destructors etc). IIRC on x64 there is a chain of data structures that correlate with stack levels, and each data structure is associated with a range of PCs. On crash the code just locates the correct data structure for the crash PC, grabs the exception handler address from that structure and invokes that. If that handler returns "CONTINUE_SEARCH" it walks the chain up to the next data structure and invokes that. With this patch we don't return CONTINUE_SEARCH anymore but end the process right away.

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

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


More information about the hotspot-dev mailing list