Le 23/08/2022 à 15:31, Chen Zhongjin a écrit : > Macros STACK_FRAME_NON_STANDARD and ANNOTATE_NOENDBR uses > _ASM_PTR. It switch between .long and .quad based on 32bit > or 64bit. However objtool doesn't work for 32bit, so _ASM_PTR > makes no sense. > > Considering that _ASM_PTR comes from asm.h, which is x86 > specific head file, while objtool.h is generic. Replace > _ASM_PTR with quad and remove asm.h reference.
objtool is about to be used on powerpc on both PPC32 and PPC64, see https://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=312955&state=* So if this part is meant to be used by all architectures, we need nothing that also works on 32 bits, don't we ? Christophe > > Signed-off-by: Chen Zhongjin <chenzhong...@huawei.com> > --- > include/linux/objtool.h | 6 ++---- > tools/include/linux/objtool.h | 6 ++---- > 2 files changed, 4 insertions(+), 8 deletions(-) > > diff --git a/include/linux/objtool.h b/include/linux/objtool.h > index 62c54ffbeeaa..d2413cb78037 100644 > --- a/include/linux/objtool.h > +++ b/include/linux/objtool.h > @@ -45,8 +45,6 @@ struct unwind_hint { > > #ifdef CONFIG_OBJTOOL > > -#include <asm/asm.h> > - > #ifndef __ASSEMBLY__ > > #define UNWIND_HINT(sp_reg, sp_offset, type, end) \ > @@ -87,7 +85,7 @@ struct unwind_hint { > #define ANNOTATE_NOENDBR \ > "986: \n\t" \ > ".pushsection .discard.noendbr\n\t" \ > - _ASM_PTR " 986b\n\t" \ > + ".quad 986b\n\t" \ > ".popsection\n\t" > > #define ASM_REACHABLE > \ > @@ -144,7 +142,7 @@ struct unwind_hint { > > .macro STACK_FRAME_NON_STANDARD func:req > .pushsection .discard.func_stack_frame_non_standard, "aw" > - _ASM_PTR \func > + .quad \func > .popsection > .endm > > diff --git a/tools/include/linux/objtool.h b/tools/include/linux/objtool.h > index 62c54ffbeeaa..d2413cb78037 100644 > --- a/tools/include/linux/objtool.h > +++ b/tools/include/linux/objtool.h > @@ -45,8 +45,6 @@ struct unwind_hint { > > #ifdef CONFIG_OBJTOOL > > -#include <asm/asm.h> > - > #ifndef __ASSEMBLY__ > > #define UNWIND_HINT(sp_reg, sp_offset, type, end) \ > @@ -87,7 +85,7 @@ struct unwind_hint { > #define ANNOTATE_NOENDBR \ > "986: \n\t" \ > ".pushsection .discard.noendbr\n\t" \ > - _ASM_PTR " 986b\n\t" \ > + ".quad 986b\n\t" \ > ".popsection\n\t" > > #define ASM_REACHABLE > \ > @@ -144,7 +142,7 @@ struct unwind_hint { > > .macro STACK_FRAME_NON_STANDARD func:req > .pushsection .discard.func_stack_frame_non_standard, "aw" > - _ASM_PTR \func > + .quad \func > .popsection > .endm >