[jdk8u-dev] RFR: 8315380: AsyncGetCallTrace crash in frame::safe_for_sender
Paul Hohensee
phh at openjdk.org
Thu Jul 24 19:58:07 UTC 2025
On Thu, 10 Jul 2025 16:30:05 GMT, Jaroslav Bachorik <jbachorik at openjdk.org> wrote:
> This change is fixing the problem in `frame_aarch64.cpp`, function `safe_for_sender`, where we have this code
>
>
> bool unextended_sp_safe = unextended_sp < thread->stack_base();
>
>
> While this captures one possibility of not being safe, it omits the check for `unextended_sp` falling within the stack space.
>
> The proposed change then is
>
>
> bool unextended_sp_safe = (unextended_sp < thread->stack_base() && \
> sp >= thread->stack_base() - thread->stack_size());
>
>
> This is actually just making sure the behaviour is the same as in JDK 15+ (since [JDK-8238988](https://bugs.openjdk.org/browse/JDK-8238988)) where the `unextended_sp` is checked for being within the stack limits.
>
>
> This PR is a clean backport of https://github.com/openjdk/jdk11u-dev/pull/3003
Marked as reviewed by phh (Reviewer).
-------------
PR Review: https://git.openjdk.org/jdk8u-dev/pull/667#pullrequestreview-3053084928
More information about the jdk8u-dev
mailing list