Lines Matching refs:prog

376     bool (*allowed)(const struct bpf_prog *prog);
447 /* The information passed from prog-specific *_is_valid_access
465 int (*test_run)(struct bpf_prog *prog, const union bpf_attr *kattr, union bpf_attr __user *uattr);
470 const struct bpf_func_proto *(*get_func_proto)(enum bpf_func_id func_id, const struct bpf_prog *prog);
475 bool (*is_valid_access)(int off, int size, enum bpf_access_type type, const struct bpf_prog *prog,
477 int (*gen_prologue)(struct bpf_insn *insn, bool direct_write, const struct bpf_prog *prog);
480 struct bpf_prog *prog, u32 *target_size);
493 int (*prepare)(struct bpf_prog *prog);
494 int (*translate)(struct bpf_prog *prog);
495 void (*destroy)(struct bpf_prog *prog);
499 struct bpf_prog *prog;
544 /* Return the return value of fentry prog. Only used by bpf_struct_ops. */
583 void notrace __bpf_prog_exit(struct bpf_prog *prog, u64 start);
595 bool prog;
654 struct bpf_prog *prog;
676 int bpf_trampoline_link_prog(struct bpf_prog *prog, struct bpf_trampoline *tr);
677 int bpf_trampoline_unlink_prog(struct bpf_prog *prog, struct bpf_trampoline *tr);
715 static inline int bpf_trampoline_link_prog(struct bpf_prog *prog, struct bpf_trampoline *tr)
719 static inline int bpf_trampoline_unlink_prog(struct bpf_prog *prog, struct bpf_trampoline *tr)
785 u32 func_cnt; /* used by non-func prog as the number of func progs */
786 u32 func_idx; /* 0 for non-func prog, the index in func array for func prog */
792 struct mutex dst_mutex; /* protects dst_* pointers below, *after* prog becomes visible */
816 struct bpf_prog *prog;
830 * Both the main and sub prog share the same linfo.
838 * Both the main and sub prog share the same jited_linfo.
847 * main prog always has linfo_idx == 0
860 /* 'Ownership' of prog array is claimed by the first program that
863 * the same prog type and JITed flag.
882 struct bpf_prog *prog;
1023 struct bpf_prog *prog, u32 *target_size);
1041 struct bpf_prog *prog;
1058 int bpf_prog_array_update_at(struct bpf_prog_array *array, int index, struct bpf_prog *prog);
1086 while ((_prog = READ_ONCE(_item->prog))) { \
1135 while ((_prog = READ_ONCE(_item->prog))) { \
1226 void bpf_prog_add(struct bpf_prog *prog, int i);
1227 void bpf_prog_sub(struct bpf_prog *prog, int i);
1228 void bpf_prog_inc(struct bpf_prog *prog);
1229 struct bpf_prog *__must_check bpf_prog_inc_not_zero(struct bpf_prog *prog);
1230 void bpf_prog_put(struct bpf_prog *prog);
1234 void bpf_prog_free_id(struct bpf_prog *prog, bool do_idr_lock);
1288 int bpf_prog_new_fd(struct bpf_prog *prog);
1291 struct bpf_prog *prog);
1316 typedef int (*bpf_iter_attach_target_t)(struct bpf_prog *prog, union bpf_iter_link_info *linfo,
1349 bool bpf_iter_prog_supported(struct bpf_prog *prog);
1350 int bpf_iter_link_attach(const union bpf_attr *attr, struct bpf_prog *prog);
1354 int bpf_iter_run_prog(struct bpf_prog *prog, void *ctx);
1425 int bpf_prog_test_run_xdp(struct bpf_prog *prog, const union bpf_attr *kattr, union bpf_attr __user *uattr);
1426 int bpf_prog_test_run_skb(struct bpf_prog *prog, const union bpf_attr *kattr, union bpf_attr __user *uattr);
1427 int bpf_prog_test_run_tracing(struct bpf_prog *prog, const union bpf_attr *kattr, union bpf_attr __user *uattr);
1428 int bpf_prog_test_run_flow_dissector(struct bpf_prog *prog, const union bpf_attr *kattr, union bpf_attr __user *uattr);
1429 int bpf_prog_test_run_raw_tp(struct bpf_prog *prog, const union bpf_attr *kattr, union bpf_attr __user *uattr);
1430 bool btf_ctx_access(int off, int size, enum bpf_access_type type, const struct bpf_prog *prog,
1442 int btf_check_type_match(struct bpf_verifier_log *log, const struct bpf_prog *prog, struct btf *btf,
1466 static inline void bpf_prog_add(struct bpf_prog *prog, int i)
1470 static inline void bpf_prog_sub(struct bpf_prog *prog, int i)
1474 static inline void bpf_prog_put(struct bpf_prog *prog)
1478 static inline void bpf_prog_inc(struct bpf_prog *prog)
1482 static inline struct bpf_prog *__must_check bpf_prog_inc_not_zero(struct bpf_prog *prog)
1497 struct bpf_prog *prog)
1590 static inline int bpf_prog_test_run_xdp(struct bpf_prog *prog, const union bpf_attr *kattr,
1596 static inline int bpf_prog_test_run_skb(struct bpf_prog *prog, const union bpf_attr *kattr,
1602 static inline int bpf_prog_test_run_tracing(struct bpf_prog *prog, const union bpf_attr *kattr,
1608 static inline int bpf_prog_test_run_flow_dissector(struct bpf_prog *prog, const union bpf_attr *kattr,
1644 int bpf_prog_offload_compile(struct bpf_prog *prog);
1645 void bpf_prog_offload_destroy(struct bpf_prog *prog);
1646 int bpf_prog_offload_info_fill(struct bpf_prog_info *info, struct bpf_prog *prog);
1655 bool bpf_offload_prog_map_match(struct bpf_prog *prog, struct bpf_map *map);
1662 bool bpf_offload_dev_match(struct bpf_prog *prog, struct net_device *netdev);
1667 int bpf_prog_offload_init(struct bpf_prog *prog, union bpf_attr *attr);
1682 static inline int bpf_prog_offload_init(struct bpf_prog *prog, union bpf_attr *attr)
1708 int sock_map_prog_update(struct bpf_map *map, struct bpf_prog *prog, struct bpf_prog *old, u32 which);
1709 int sock_map_get_from_fd(const union bpf_attr *attr, struct bpf_prog *prog);
1715 static inline int sock_map_prog_update(struct bpf_map *map, struct bpf_prog *prog, struct bpf_prog *old, u32 which)
1720 static inline int sock_map_get_from_fd(const union bpf_attr *attr, struct bpf_prog *prog)
1812 const struct bpf_func_proto *bpf_tracing_func_proto(enum bpf_func_id func_id, const struct bpf_prog *prog);
1814 const struct bpf_func_proto *tracing_prog_func_proto(enum bpf_func_id func_id, const struct bpf_prog *prog);
1825 struct bpf_prog *prog, u32 *target_size);
1838 struct bpf_insn *insn_buf, struct bpf_prog *prog, u32 *target_size)
1857 struct bpf_prog *prog, u32 *target_size);
1862 struct bpf_prog *prog, u32 *target_size);
1871 struct bpf_insn *insn_buf, struct bpf_prog *prog, u32 *target_size)
1882 struct bpf_insn *insn_buf, struct bpf_prog *prog, u32 *target_size)