On 2023/1/12 19:00, Mark Rutland wrote: > 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 > Okay, you've fixed it. Thanks for pointing out. > > ... I'll post a v2 with that folded in once this has had a bit more time to gather comments. > > Thanks, > Mark. > > . >