RFR: 8350111: [PPC] AsyncGetCallTrace crashes when called while handling SIGTRAP

Martin Doerr mdoerr at openjdk.org
Tue Feb 25 10:21:52 UTC 2025


On Fri, 14 Feb 2025 16:11:55 GMT, Richard Reingruber <rrich at openjdk.org> wrote:

> With this change `JavaThread::pd_get_top_frame_for_profiling()` fails if the current thread is found to be `_thread_in_Java` but the CodeCache does not contain its pc.
> 
> This will prevent crashes as described by the JBS item.
> 
> The fix might be too conservative for situations where a thread doen't change its thread state when calling native code, e.g. using the Foreign Function & Memory API. The difficulty finding a less defensive fix is that one must detect if a valid pc can be found in the caller's ABI before constructing that frame.
> 
> Testing:
> 
> * DaCapo Tomcat with async-profiler on a fastdebug build.
> * Tier 1-4 of hotspot and jdk on the main platforms and also on Linux/PPC64le and AIX.

LGTM.

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

Marked as reviewed by mdoerr (Reviewer).

PR Review: https://git.openjdk.org/jdk/pull/23641#pullrequestreview-2640507857


More information about the hotspot-runtime-dev mailing list