Hi, qiwu
Thank you for the update.
On Mon, Jul 15, 2024 at 11:52 AM <devel-request(a)lists.crash-utility.osci.io>
wrote:
 Date: Sun, 14 Jul 2024 11:38:27 -0000
 From: qiwu.chen(a)transsion.com
 Subject: [Crash-utility] Re: [PATCH] arm64: fix a potential segfault
         in arm64_unwind_frame
 To: devel(a)lists.crash-utility.osci.io
 Message-ID: <20240714113827.21739.63969(a)lists.crash-utility.osci.io>
 Content-Type: text/plain; charset="utf-8"
 Sorry, the patch in previous mail. is mistake Please help review the below
 patch which is test fine:
 diff --git a/arm64.c b/arm64.c
 index b3040d7..b992c01 100644
 --- a/arm64.c
 +++ b/arm64.c
 @@ -2814,7 +2814,7 @@ arm64_unwind_frame(struct bt_info *bt, struct
 arm64_stackframe
 *frame)
         low  = frame->sp;
         high = (low + stack_mask) & ~(stack_mask);
 -       if (fp < low || fp > high || fp & 0xf)
 +       if (fp < low || fp > high || fp & 0xf || !INSTACK(fp, bt))
                 return FALSE;
 
I saw the similar code is in the arm64_unwind_frame_v2(), can you help to
check if the current issue can be reproduced with bt -o/-O(although the
-o/-O may be used in some old vmores)? Or we need to do the same change in
the arm64_unwind_frame_v2().
BTW: I can not reproduce the current issue, can you help share how to
reproduce this one(if possible)?
Thanks
Lianbo
        frame->sp = fp + 0x10;
 Thanks