On Thu, Jan 12, 2023 at 02:48:45PM +0800, Li Huafei wrote: > On 2023/1/9 21:58, Mark Rutland wrote: > > > diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h > > index 99f1146614c04..5eeb2776124c5 100644 > > --- a/include/linux/ftrace.h > > +++ b/include/linux/ftrace.h > > @@ -57,6 +57,9 @@ void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip); > > void arch_ftrace_ops_list_func(unsigned long ip, unsigned long parent_ip, > > struct ftrace_ops *op, struct ftrace_regs *fregs); > > #endif > > +extern const struct ftrace_ops ftrace_nop_ops; > > +extern const struct ftrace_ops ftrace_list_ops; > > +struct ftrace_ops *ftrace_find_unique_ops(struct dyn_ftrace *rec); > > Hi Mark, Hi Huafei, Thanks for the reporrt. > This patch has build issues on x86: > > CC mm/readahead.o > In file included from include/linux/perf_event.h:52:0, > from arch/x86/events/amd/lbr.c:2: > include/linux/ftrace.h:62:50: error: ‘struct dyn_ftrace’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror] > struct ftrace_ops *ftrace_find_unique_ops(struct dyn_ftrace *rec); > > Here we should need 'struct dyn_ftrace' forward declaration. The build robot spotted this a couple of days ago (from my branch rather than the list), and I fixed it there a couple of days ago. The relevant messages were: https://lore.kernel.org/oe-kbuild-all/202301100944.E0mV3kSO-lkp@xxxxxxxxx/ https://lore.kernel.org/oe-kbuild-all/Y72TJ3qQuvx3gIOi@FVFF77S0Q05N/#t ... and the updated commit is at: https://git.kernel.org/pub/scm/linux/kernel/git/mark/linux.git/commit/?h=arm64/ftrace/per-callsite-ops&id=acab29d6ea2f20d8d156cdd301ad9790bd1d888f ... I'll post a v2 with that folded in once this has had a bit more time to gather comments. Thanks, Mark.