bpf_trampoline
struct bpf_trampoline *tr,
struct bpf_trampoline *tr,
struct bpf_trampoline *bpf_trampoline_get(u64 key,
void bpf_trampoline_put(struct bpf_trampoline *tr);
struct bpf_trampoline *tr,
struct bpf_trampoline *tr,
static inline struct bpf_trampoline *bpf_trampoline_get(u64 key,
static inline void bpf_trampoline_put(struct bpf_trampoline *tr) {}
struct bpf_trampoline *dst_trampoline;
struct bpf_trampoline *trampoline;
struct bpf_trampoline *trampoline;
struct bpf_trampoline *trampoline;
struct bpf_trampoline *tr = NULL;
struct bpf_trampoline *tr;
static struct bpf_shim_tramp_link *cgroup_shim_find(struct bpf_trampoline *tr,
struct bpf_trampoline *tr;
struct bpf_trampoline *tr;
struct bpf_trampoline *bpf_trampoline_get(u64 key,
struct bpf_trampoline *tr;
void bpf_trampoline_put(struct bpf_trampoline *tr)
static int register_fentry_multi(struct bpf_trampoline *tr, struct bpf_tramp_image *im, void *ptr)
static int unregister_fentry_multi(struct bpf_trampoline *tr, u32 orig_flags, void *ptr)
static int modify_fentry_multi(struct bpf_trampoline *tr, u32 orig_flags, struct bpf_tramp_image *im,
static void bpf_trampoline_multi_attach_init(struct bpf_trampoline *tr)
static void bpf_trampoline_multi_attach_free(struct bpf_trampoline *tr)
static void bpf_trampoline_multi_attach_rollback(struct bpf_trampoline *tr)
struct bpf_trampoline *tr;
static int direct_ops_alloc(struct bpf_trampoline *tr)
static void direct_ops_free(struct bpf_trampoline *tr) { }
static struct ftrace_hash *hash_from_ip(struct bpf_trampoline *tr, void *ptr)
static int direct_ops_add(struct bpf_trampoline *tr, void *addr)
static int direct_ops_del(struct bpf_trampoline *tr, void *addr)
static int direct_ops_mod(struct bpf_trampoline *tr, void *addr, bool lock_direct_mutex)
static int direct_ops_alloc(struct bpf_trampoline *tr)
static void direct_ops_free(struct bpf_trampoline *tr)
static int direct_ops_add(struct bpf_trampoline *tr, void *ptr)
static int direct_ops_del(struct bpf_trampoline *tr, void *addr)
static int direct_ops_mod(struct bpf_trampoline *tr, void *ptr, bool lock_direct_mutex)
static void direct_ops_free(struct bpf_trampoline *tr) { }
static int direct_ops_alloc(struct bpf_trampoline *tr)
static int direct_ops_add(struct bpf_trampoline *tr, void *addr)
static int direct_ops_del(struct bpf_trampoline *tr, void *addr)
static int direct_ops_mod(struct bpf_trampoline *tr, void *ptr, bool lock_direct_mutex)
static struct bpf_trampoline *bpf_trampoline_lookup(u64 key, unsigned long ip)
struct bpf_trampoline *tr;
static int bpf_trampoline_update_fentry(struct bpf_trampoline *tr, u32 orig_flags,
static int unregister_fentry(struct bpf_trampoline *tr, u32 orig_flags, void *data __maybe_unused)
static int modify_fentry(struct bpf_trampoline *tr, u32 orig_flags, struct bpf_tramp_image *im,
static struct mutex *select_trampoline_lock(struct bpf_trampoline *tr)
static int register_fentry(struct bpf_trampoline *tr, struct bpf_tramp_image *im,
bpf_trampoline_get_progs(const struct bpf_trampoline *tr, int *total, bool *ip_arg)
static void trampoline_lock(struct bpf_trampoline *tr)
static void trampoline_unlock(struct bpf_trampoline *tr)
int (*register_fentry)(struct bpf_trampoline *tr, struct bpf_tramp_image *im, void *data);
int (*unregister_fentry)(struct bpf_trampoline *tr, u32 orig_flags, void *data);
int (*modify_fentry)(struct bpf_trampoline *tr, u32 orig_flags, struct bpf_tramp_image *im,
static int bpf_trampoline_update(struct bpf_trampoline *tr, bool lock_direct_mutex,
static int bpf_trampoline_update(struct bpf_trampoline *tr, bool lock_direct_mutex,
static struct bpf_trampoline *direct_ops_ip_lookup(struct ftrace_ops *ops, unsigned long ip)
struct bpf_trampoline *tr;
static int bpf_trampoline_add_prog(struct bpf_trampoline *tr,
static void bpf_trampoline_remove_prog(struct bpf_trampoline *tr,
struct bpf_trampoline *tr,
static struct bpf_trampoline *direct_ops_ip_lookup(struct ftrace_ops *ops, unsigned long ip)
struct bpf_trampoline *tr,
struct bpf_trampoline *tr,
struct bpf_trampoline *tr,
struct bpf_trampoline *tr;