Merge tag 'net-next-6.4' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev...
[linux-block.git] / kernel / bpf / trampoline.c
index a14d0af534b373f93e21182b496d9468bd1caacb..ac021bc43a66b7e2225597b9969de675bfe7c32a 100644 (file)
@@ -9,7 +9,6 @@
 #include <linux/btf.h>
 #include <linux/rcupdate_trace.h>
 #include <linux/rcupdate_wait.h>
-#include <linux/module.h>
 #include <linux/static_call.h>
 #include <linux/bpf_verifier.h>
 #include <linux/bpf_lsm.h>
@@ -172,26 +171,6 @@ out:
        return tr;
 }
 
-static int bpf_trampoline_module_get(struct bpf_trampoline *tr)
-{
-       struct module *mod;
-       int err = 0;
-
-       preempt_disable();
-       mod = __module_text_address((unsigned long) tr->func.addr);
-       if (mod && !try_module_get(mod))
-               err = -ENOENT;
-       preempt_enable();
-       tr->mod = mod;
-       return err;
-}
-
-static void bpf_trampoline_module_put(struct bpf_trampoline *tr)
-{
-       module_put(tr->mod);
-       tr->mod = NULL;
-}
-
 static int unregister_fentry(struct bpf_trampoline *tr, void *old_addr)
 {
        void *ip = tr->func.addr;
@@ -202,8 +181,6 @@ static int unregister_fentry(struct bpf_trampoline *tr, void *old_addr)
        else
                ret = bpf_arch_text_poke(ip, BPF_MOD_CALL, old_addr, NULL);
 
-       if (!ret)
-               bpf_trampoline_module_put(tr);
        return ret;
 }
 
@@ -238,9 +215,6 @@ static int register_fentry(struct bpf_trampoline *tr, void *new_addr)
                tr->func.ftrace_managed = true;
        }
 
-       if (bpf_trampoline_module_get(tr))
-               return -ENOENT;
-
        if (tr->func.ftrace_managed) {
                ftrace_set_filter_ip(tr->fops, (unsigned long)ip, 0, 1);
                ret = register_ftrace_direct(tr->fops, (long)new_addr);
@@ -248,8 +222,6 @@ static int register_fentry(struct bpf_trampoline *tr, void *new_addr)
                ret = bpf_arch_text_poke(ip, BPF_MOD_CALL, NULL, new_addr);
        }
 
-       if (ret)
-               bpf_trampoline_module_put(tr);
        return ret;
 }