On Fri, Jan 24, 2025 at 6:38 PM Lianbo Jiang <liji...@redhat.com> wrote:
> This issue was caused by commit 0f39e33d3504 with the following > compilation error: > > frame.c: In function ‘CORE_ADDR frame_unwind_pc(frame_info*)’: > frame.c:982:35: error: cannot convert ‘CORE_ADDR*’ {aka ‘long long > unsigned int*’} to ‘ulong*’ {aka ‘long unsigned int*’} > 982 | crash_decode_ptrauth_pc(&pc); > | ^~~ > | | > | CORE_ADDR* {aka long long > unsigned int*} > frame.c:948:48: note: initializing argument 1 of ‘void > crash_decode_ptrauth_pc(ulong*)’ > 948 | extern "C" void crash_decode_ptrauth_pc(ulong* pc); > | ~~~~~~~^~ > > Fixes: 0f39e33d3504 ("arm64: add pac mask to better support gdb stack > unwind") > Reported-by: Guanyou.Chen <chenguan...@xiaomi.com> > Signed-off-by: Lianbo Jiang <liji...@redhat.com> > --- > gdb-10.2.patch | 6 +++--- > gdb_interface.c | 4 ++-- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/gdb-10.2.patch b/gdb-10.2.patch > index 8f5d7db22840..156df2ed78b5 100644 > --- a/gdb-10.2.patch > +++ b/gdb-10.2.patch > @@ -55,7 +55,7 @@ exit 0 > # your system doesn't have fcntl.h in /usr/include (which is where it > # should be according to Posix). > -DEFS = @DEFS@ > -+DEFS = -DCRASH_MERGE @DEFS@ > ++DEFS = -DCRASH_MERGE -DTARGET_${CRASH_TARGET} @DEFS@ > Sorry, It should be: +DEFS = -DCRASH_MERGE -D${CRASH_TARGET} @DEFS@ Thanks Lianbo > GDB_CFLAGS = -I. -I$(srcdir) -I$(srcdir)/config \ > -DLOCALEDIR="\"$(localedir)\"" $(DEFS) > > @@ -16222,7 +16222,7 @@ exit 0 > return NULL; > } > > -+#ifdef CRASH_MERGE > ++#if defined(CRASH_MERGE) && defined(ARM64) > +extern "C" void crash_decode_ptrauth_pc(ulong* pc); > +#endif > + > @@ -16233,7 +16233,7 @@ exit 0 > try > { > pc = gdbarch_unwind_pc (prev_gdbarch, this_frame); > -+#ifdef CRASH_MERGE > ++#if defined(CRASH_MERGE) && defined(ARM64) > + crash_decode_ptrauth_pc(&pc); > +#endif > pc_p = true; > diff --git a/gdb_interface.c b/gdb_interface.c > index e108d097ee5f..c2e99f5c156a 100644 > --- a/gdb_interface.c > +++ b/gdb_interface.c > @@ -1084,12 +1084,12 @@ int crash_get_current_task_reg (int regno, const > char *regname, > } > > /* arm64 kernel lr maybe has patuh */ > +#ifdef ARM64 > void crash_decode_ptrauth_pc(ulong *pc); > void crash_decode_ptrauth_pc(ulong *pc) > { > -#ifdef ARM64 > struct machine_specific *ms = machdep->machspec; > if (is_kernel_text(*pc | ms->CONFIG_ARM64_KERNELPACMASK)) > *pc |= ms->CONFIG_ARM64_KERNELPACMASK; > -#endif /* !ARM64 */ > } > +#endif /* !ARM64 */ > -- > 2.47.1 > >
-- Crash-utility mailing list -- devel@lists.crash-utility.osci.io To unsubscribe send an email to devel-le...@lists.crash-utility.osci.io https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/ Contribution Guidelines: https://github.com/crash-utility/crash/wiki