mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-19 21:21:09 +00:00
add infrastructure for tagging functions as error injectable
Using BPF we can override kprob'ed functions and return arbitrary values. Obviously this can be a bit unsafe, so make this feature opt-in for functions. Simply tag a function with KPROBE_ERROR_INJECT_SYMBOL in order to give BPF access to that function for error injection purposes. Signed-off-by: Josef Bacik <jbacik@fb.com> Acked-by: Ingo Molnar <mingo@kernel.org> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
This commit is contained in:
parent
a23967c181
commit
92ace9991d
6 changed files with 195 additions and 1 deletions
|
@ -3118,7 +3118,11 @@ static int find_module_sections(struct module *mod, struct load_info *info)
|
|||
sizeof(*mod->ftrace_callsites),
|
||||
&mod->num_ftrace_callsites);
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_BPF_KPROBE_OVERRIDE
|
||||
mod->kprobe_ei_funcs = section_objs(info, "_kprobe_error_inject_list",
|
||||
sizeof(*mod->kprobe_ei_funcs),
|
||||
&mod->num_kprobe_ei_funcs);
|
||||
#endif
|
||||
mod->extable = section_objs(info, "__ex_table",
|
||||
sizeof(*mod->extable), &mod->num_exentries);
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue