[RFC PATCH 3/3] objtool/mcount: Add powerpc specific functions

Christophe Leroy christophe.leroy at csgroup.eu
Sat May 21 19:38:35 AEST 2022


Le 12/05/2022 à 17:12, Josh Poimboeuf a écrit :
> On Thu, May 12, 2022 at 02:52:40PM +0000, Christophe Leroy wrote:
>> Hi Josh,
>>
>> Le 28/03/2022 à 21:59, Josh Poimboeuf a écrit :
>>> On Sun, Mar 27, 2022 at 09:09:20AM +0000, Christophe Leroy wrote:
>>>> What are current works in progress on objtool ? Should I wait Josh's
>>>> changes before starting looking at all this ? Should I wait for anything
>>>> else ?
>>>
>>> I'm not making any major changes to the code, just shuffling things
>>> around to make the interface more modular.  I hope to have something
>>> soon (this week).  Peter recently added a big feature (Intel IBT) which
>>> is already in -next.
>>>
>>
>> Were you able to send out something ?
> 
> Yes, the objtool rewrite is now in tip/objtool/core and linux-next.

Nice.

I gave it a try this morning, I selected HAVE_OBJTOOL and 
HAVE_OBJTOOL_MCOUNT from arch/powerpc/Kconfig


Seems like there are still some x86 arch specific stuff in common common 
code and I get the following errors.

Also, is it normal to get those functions built allthough I have not 
selected HAVE_STACK_VALIDATION ?

   CC      /home/chleroy/linux-powerpc/tools/objtool/check.o
check.c: In function 'has_valid_stack_frame':
check.c:2369:30: error: 'CFI_BP' undeclared (first use in this 
function); did you mean 'CFI_SP'?
  2369 |         if (cfi->cfa.base == CFI_BP &&
       |                              ^~~~~~
       |                              CFI_SP
check.c:2369:30: note: each undeclared identifier is reported only once 
for each function it appears in
check.c:2371:44: error: 'CFI_RA' undeclared (first use in this 
function); did you mean 'CFI_R3'?
  2371 |             check_reg_frame_pos(&cfi->regs[CFI_RA], 
-cfi->cfa.offset + 8))
       |                                            ^~~~~~
       |                                            CFI_R3
check.c: In function 'update_cfi_state':
check.c:2499:70: error: 'CFI_BP' undeclared (first use in this 
function); did you mean 'CFI_SP'?
  2499 |                         if (op->src.reg == CFI_SP && 
op->dest.reg == CFI_BP &&
       | 
       ^~~~~~
       | 
       CFI_SP
make[3]: *** [/home/chleroy/linux-powerpc/tools/build/Makefile.build:97: 
/home/chleroy/linux-powerpc/tools/objtool/check.o] Error 1
make[2]: *** [Makefile:54: 
/home/chleroy/linux-powerpc/tools/objtool/objtool-in.o] Error 2
make[1]: *** [Makefile:69: objtool] Error 2
make: *** [Makefile:1337: tools/objtool] Error 2


What would be the best approach to fix that ?

Thanks
Christophe


More information about the Linuxppc-dev mailing list