On Mon, 27 Apr 2026 23:51:41 GMT, Yasumasa Suenaga <[email protected]> wrote:
> We could see jtreg test failure in TestJhsdbJstackMixedWithXComp.java due to > unable unwinding from continuation stub. > SA could unwind mixed call stacks since > [JDK-8377946](https://bugs.openjdk.org/browse/JDK-8377946), and enabled > TestJhsdbJstackMixedWithXComp tests in it. Hence the problem has been > suffered. The problem was reported in Valhalla, but it is potential to happen > on upstream, thus I proposed the fix to upstream. > > There are 2 problems in LinuxAARCH64CFrame: > > 1. On AArch64 which disables `PreserveFramePointer`, we cannot believe FP to > unwind call stacks, thus we might not be able to unwind call stacks from Java > frame (includes code blobs). > 2. In continuation stub, we need to get SP/FP/PC from continuation entry. > > So I fixed them in this PR, and it works on both upstream and Valhalla. > > --------- > - [x] I confirm that I make this contribution in accordance with the [OpenJDK > Interim AI Policy](https://openjdk.org/legal/ai). src/jdk.hotspot.agent/share/classes/sun/jvm/hotspot/debugger/linux/aarch64/LinuxAARCH64CFrame.java line 157: > 155: } else if (currentBlob.getFrameSize() == 0) { > 156: senderSP = fp().addOffsetTo(2 * VM.getVM().getAddressSize()); > 157: } else { I first read it as "calculate ... without FP if possible.." and was going to suggest that correction. But I think it's always possible to calculate these things based on SP. So just remove "as possible" I think. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/30959#discussion_r3166666219
