hi, while poking the multi-tracing interface I ended up with just one ftrace_ops object to attach all trampolines.
This change allows to use less direct API calls during the attachment changes in the future code, so in effect speeding up the attachment. However having just single ftrace_ops object removes direct_call field from direct_call, which is needed by arm, so I'm not sure it's the right path forward. Mark, Florent, any idea how hard would it be to for arm to get rid of direct_call field? thougts? thanks, jirka --- Jiri Olsa (10): ftrace: Make alloc_and_copy_ftrace_hash direct friendly ftrace: Add register_ftrace_direct_hash function ftrace: Add unregister_ftrace_direct_hash function ftrace: Add modify_ftrace_direct_hash function ftrace: Export some of hash related functions ftrace: Use direct hash interface in direct functions bpf: Add trampoline ip hash table ftrace: Factor ftrace_ops ops_func interface bpf: Remove ftrace_ops from bpf_trampoline object Revert "ftrace: Store direct called addresses in their ops" include/linux/bpf.h | 8 +- include/linux/ftrace.h | 51 ++++++++++--- kernel/bpf/trampoline.c | 94 +++++++++++++----------- kernel/trace/ftrace.c | 481 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------- kernel/trace/trace.h | 8 -- kernel/trace/trace_selftest.c | 5 +- 6 files changed, 395 insertions(+), 252 deletions(-)