8371368: SIGSEGV in JfrVframeStream::next_vframe() on arm64

Reviewed-by: egahlin
This commit is contained in:
Markus Grönlund 2025-11-25 09:07:35 +00:00
parent ba3d4c4311
commit 42f3333524
2 changed files with 2 additions and 1 deletions

View File

@ -217,7 +217,7 @@ static bool compute_top_frame(const JfrSampleRequest& request, frame& top_frame,
const PcDesc* const pc_desc = get_pc_desc(sampled_nm, sampled_pc);
if (is_valid(pc_desc)) {
intptr_t* const synthetic_sp = sender_sp - sampled_nm->frame_size();
top_frame = frame(synthetic_sp, synthetic_sp, sender_sp, pc_desc->real_pc(sampled_nm), sampled_nm);
top_frame = frame(synthetic_sp, synthetic_sp, sender_sp - 2, pc_desc->real_pc(sampled_nm), sampled_nm);
in_continuation = is_in_continuation(top_frame, jt);
return true;
}

View File

@ -32,6 +32,7 @@ import jdk.test.lib.jfr.EventNames;
* @library /test/lib
* @build jdk.jfr.event.profiling.BaseTestFullStackTrace
* @run main/othervm jdk.jfr.event.profiling.TestFullStackTrace
* @run main/othervm -XX:CompileCommand=compileonly,jdk.test.lib.jfr.RecurseThread::recurse* -XX:+PreserveFramePointer jdk.jfr.event.profiling.TestFullStackTrace
*/
public class TestFullStackTrace {