diff options
| author | Mark Brown <broonie@kernel.org> | 2024-03-18 17:30:46 +0000 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2024-03-18 17:30:46 +0000 |
| commit | 5bd249aec71d75f0088357e4aba27fde0610f823 (patch) | |
| tree | ed63b21b48b711430492734564775758a39eb94c /arch/powerpc/kernel/trace/ftrace.c | |
| parent | 7397175cb7b48f7a3fc699083aa46f1234904c7e (diff) | |
| parent | e8f897f4afef0031fe618a8e94127a0934896aba (diff) | |
spi: Merge up v6.8 release
An i.MX fix depends on other fixes that were sent to v6.8.
Diffstat (limited to 'arch/powerpc/kernel/trace/ftrace.c')
| -rw-r--r-- | arch/powerpc/kernel/trace/ftrace.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/trace/ftrace.c b/arch/powerpc/kernel/trace/ftrace.c index 82010629cf88..d8d6b4fd9a14 100644 --- a/arch/powerpc/kernel/trace/ftrace.c +++ b/arch/powerpc/kernel/trace/ftrace.c @@ -27,10 +27,22 @@ #include <asm/ftrace.h> #include <asm/syscall.h> #include <asm/inst.h> +#include <asm/sections.h> #define NUM_FTRACE_TRAMPS 2 static unsigned long ftrace_tramps[NUM_FTRACE_TRAMPS]; +unsigned long ftrace_call_adjust(unsigned long addr) +{ + if (addr >= (unsigned long)__exittext_begin && addr < (unsigned long)__exittext_end) + return 0; + + if (IS_ENABLED(CONFIG_ARCH_USING_PATCHABLE_FUNCTION_ENTRY)) + addr += MCOUNT_INSN_SIZE; + + return addr; +} + static ppc_inst_t ftrace_create_branch_inst(unsigned long ip, unsigned long addr, int link) { ppc_inst_t op; |