Commit 62d468e5 authored by Jiri Olsa's avatar Jiri Olsa Committed by Andrii Nakryiko

bpf: Cleanup ftrace hash in bpf_trampoline_put

We need to release possible hash from trampoline fops object
before removing it, otherwise we leak it.

Fixes: 00963a2e ("bpf: Support bpf_trampoline on functions with IPMODIFY (e.g. livepatch)")
Signed-off-by: default avatarJiri Olsa <jolsa@kernel.org>
Signed-off-by: default avatarAndrii Nakryiko <andrii@kernel.org>
Acked-by: default avatarSong Liu <song@kernel.org>
Link: https://lore.kernel.org/bpf/20220802135651.1794015-1-jolsa@kernel.org
parent e2dcac2f
...@@ -841,7 +841,10 @@ void bpf_trampoline_put(struct bpf_trampoline *tr) ...@@ -841,7 +841,10 @@ void bpf_trampoline_put(struct bpf_trampoline *tr)
* multiple rcu callbacks. * multiple rcu callbacks.
*/ */
hlist_del(&tr->hlist); hlist_del(&tr->hlist);
if (tr->fops) {
ftrace_free_filter(tr->fops);
kfree(tr->fops); kfree(tr->fops);
}
kfree(tr); kfree(tr);
out: out:
mutex_unlock(&trampoline_mutex); mutex_unlock(&trampoline_mutex);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment