Messages in this thread Patch in this message | | | Date | Wed, 13 Oct 2021 11:16:49 -0700 | Subject | [PATCH v5 06/15] ftrace: Use an opaque type for functions not callable from C | From | Sami Tolvanen <> |
| |
With CONFIG_CFI_CLANG, the compiler changes function references to point to the CFI jump table. As ftrace_call, ftrace_regs_call, and mcount_call are not called by C code, but are trampolines injected as calls replacing the nops at the start of functions added by the compiler, use DECLARE_NOT_CALLED_FROM_C to declare them.
Signed-off-by: Sami Tolvanen <samitolvanen@google.com> Tested-by: Nick Desaulniers <ndesaulniers@google.com> Tested-by: Sedat Dilek <sedat.dilek@gmail.com> --- include/linux/ftrace.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h index 832e65f06754..c53a00b96ba9 100644 --- a/include/linux/ftrace.h +++ b/include/linux/ftrace.h @@ -578,9 +578,10 @@ extern void ftrace_replace_code(int enable); extern int ftrace_update_ftrace_func(ftrace_func_t func); extern void ftrace_caller(void); extern void ftrace_regs_caller(void); -extern void ftrace_call(void); -extern void ftrace_regs_call(void); -extern void mcount_call(void); + +DECLARE_NOT_CALLED_FROM_C(ftrace_call); +DECLARE_NOT_CALLED_FROM_C(ftrace_regs_call); +DECLARE_NOT_CALLED_FROM_C(mcount_call); void ftrace_modify_all_code(int command); -- 2.33.0.1079.g6e70778dc9-goog
| |