Le 18/05/2022 à 14:03, Michael Ellerman a écrit : > Michael Ellerman <m...@ellerman.id.au> writes: >> "Naveen N. Rao" <naveen.n....@linux.vnet.ibm.com> writes: >>> Christophe Leroy wrote: >>>> A lot of #ifdefs can be replaced by IS_ENABLED() >>>> >>>> Do so. >>>> >>>> This requires to have kernel_toc_addr() defined at all time >>>> as well as PPC_INST_LD_TOC and PPC_INST_STD_LR. >>>> >>>> Signed-off-by: Christophe Leroy <christophe.le...@csgroup.eu> >>>> --- >>>> v2: Moved the setup of pop outside of the big if()/else() in >>>> __ftrace_make_nop() >>>> --- >>>> arch/powerpc/include/asm/code-patching.h | 2 - >>>> arch/powerpc/include/asm/module.h | 2 - >>>> arch/powerpc/include/asm/sections.h | 24 +-- >>>> arch/powerpc/kernel/trace/ftrace.c | 182 +++++++++++------------ >>>> 4 files changed, 103 insertions(+), 107 deletions(-) >>>> >>> >>> <snip> >>> >>>> @@ -710,6 +707,9 @@ void arch_ftrace_update_code(int command) >>>> >>>> #ifdef CONFIG_PPC64 >>>> #define PACATOC offsetof(struct paca_struct, kernel_toc) >>>> +#else >>>> +#define PACATOC 0 >>>> +#endif >>> >>> This conflicts with my fix for the ftrace init tramp: >>> https://patchwork.ozlabs.org/project/linuxppc-dev/patch/20220516071422.463738-1-naveen.n....@linux.vnet.ibm.com/ >>> >>> It probably makes sense to retain #ifdef CONFIG_PPC64, so that we can >>> get rid of the PACATOC. Here is an incremental diff: >> >> Where is the incremental diff meant to apply? >> >> It doesn't apply on top of patch 19, or at the end of the series. > > I think I worked out what you meant. > > Can you check what's in next-test: > > https://github.com/linuxppc/linux/commits/next-test
Yes that looks fine. As Naveen mentioned we can also get rid of PACATOC completely and use offsetof(struct paca_struct, kernel_toc) directly at the only place PACATOC is used. Thanks Christophe