Home
last modified time | relevance | path

Searched refs:bpf_insn (Results 1 – 25 of 110) sorted by relevance

12345

/linux/tools/include/linux/
H A Dfilter.h36 ((struct bpf_insn) { \
44 ((struct bpf_insn) { \
54 ((struct bpf_insn) { \
62 ((struct bpf_insn) { \
72 ((struct bpf_insn) { \
82 ((struct bpf_insn) { \
90 ((struct bpf_insn) { \
100 ((struct bpf_insn) { \
108 ((struct bpf_insn) { \
118 ((struct bpf_insn) { \
[all...]
/linux/samples/bpf/
H A Dbpf_insn.h6 struct bpf_insn;
11 ((struct bpf_insn) { \
19 ((struct bpf_insn) { \
29 ((struct bpf_insn) { \
37 ((struct bpf_insn) { \
47 ((struct bpf_insn) { \
55 ((struct bpf_insn) { \
65 ((struct bpf_insn) { \
73 ((struct bpf_insn) { \
85 ((struct bpf_insn) { \
[all …]
/linux/tools/lib/bpf/
H A Dgen_loader.c98 static void emit(struct bpf_gen *gen, struct bpf_insn insn) in emit()
106 static void emit2(struct bpf_gen *gen, struct bpf_insn insn1, struct bpf_insn insn2) in emit2()
413 struct bpf_insn *insn = (struct bpf_insn *)opts->insns; in bpf_gen__finish()
414 int insn_cnt = opts->insns_sz / sizeof(struct bpf_insn); in bpf_gen__finish()
724 move_blob2blob(gen, insn + offsetof(struct bpf_insn, imm), 4, in emit_relo_kfunc_btf()
725 kdesc->insn + offsetof(struct bpf_insn, imm)); in emit_relo_kfunc_btf()
726 move_blob2blob(gen, insn + offsetof(struct bpf_insn, off), 2, in emit_relo_kfunc_btf()
727 kdesc->insn + offsetof(struct bpf_insn, off)); in emit_relo_kfunc_btf()
747 emit(gen, BPF_ST_MEM(BPF_W, BPF_REG_8, offsetof(struct bpf_insn, imm), 0)); in emit_relo_kfunc_btf()
748 emit(gen, BPF_ST_MEM(BPF_H, BPF_REG_8, offsetof(struct bpf_insn, off), 0)); in emit_relo_kfunc_btf()
[all …]
H A Dfeatures.c25 struct bpf_insn insns[] = { in probe_kern_prog_name()
49 struct bpf_insn insns[] = { in probe_kern_global_data()
230 struct bpf_insn insns[] = { in probe_kern_exp_attach_type()
251 struct bpf_insn insns[] = { in probe_kern_probe_read_kernel()
267 struct bpf_insn insns[] = { in probe_prog_bind_map()
334 struct bpf_insn insns[] = { in probe_perf_link()
370 struct bpf_insn insns[] = { in probe_uprobe_multi_link()
429 struct bpf_insn insns[] = { in probe_kern_bpf_cookie()
475 const struct bpf_insn insns[] = { in probe_kern_arg_ctx_tag()
524 struct bpf_insn insns[] = { in probe_ldimm64_full_range_off()
[all …]
/linux/include/linux/
H A Dfilter.h107 ((struct bpf_insn) { \
118 ((struct bpf_insn) { \
131 ((struct bpf_insn) { \
141 ((struct bpf_insn) { \
153 ((struct bpf_insn) { \
163 ((struct bpf_insn) { \
173 ((struct bpf_insn) { \
181 ((struct bpf_insn) { \
195 ((struct bpf_insn) { \
202 static inline bool insn_is_mov_percpu_addr(const struct bpf_insn *insn) in insn_is_mov_percpu_addr()
[all …]
H A Dbpf_verifier.h1037 struct bpf_insn insn_buf[INSN_BUF_SIZE];
1038 struct bpf_insn epilogue_buf[INSN_BUF_SIZE];
1064 static inline bool bpf_helper_call(const struct bpf_insn *insn) in bpf_helper_call()
1070 static inline bool bpf_pseudo_call(const struct bpf_insn *insn) in bpf_pseudo_call()
1076 static inline bool bpf_pseudo_kfunc_call(const struct bpf_insn *insn) in bpf_pseudo_kfunc_call()
1163 struct bpf_insn *insn);
1459 static inline bool insn_is_gotox(struct bpf_insn *insn) in insn_is_gotox()
1476 const char *bpf_disasm_kfunc_name(void *data, const struct bpf_insn *insn);
1480 int bpf_jmp_offset(struct bpf_insn *insn);
1486 bool bpf_is_throw_kfunc(struct bpf_insn *insn);
[all …]
H A Dbpf.h78 const struct bpf_insn *);
127 int (*map_gen_lookup)(struct bpf_map *map, struct bpf_insn *insn_buf);
1126 static bool bpf_is_ldimm64(const struct bpf_insn *insn) in bpf_is_ldimm64()
1131 static inline bool bpf_pseudo_func(const struct bpf_insn *insn) in bpf_pseudo_func()
1154 int (*gen_prologue)(struct bpf_insn *insn, bool direct_write,
1156 int (*gen_epilogue)(struct bpf_insn *insn, const struct bpf_prog *prog,
1158 int (*gen_ld_abs)(const struct bpf_insn *orig,
1159 struct bpf_insn *insn_buf);
1161 const struct bpf_insn *src,
1162 struct bpf_insn *dst,
[all …]
/linux/tools/testing/selftests/bpf/
H A Dtest_verifier.c86 struct bpf_insn insns[MAX_INSNS];
87 struct bpf_insn *fill_insns;
99 struct bpf_insn expected_insns[MAX_EXPECTED_INSNS];
104 struct bpf_insn unexpected_insns[MAX_UNEXPECTED_INSNS];
192 struct bpf_insn *insn = self->fill_insns; in bpf_fill_ld_abs_vlan_push_pop()
235 struct bpf_insn *insn = self->fill_insns; in bpf_fill_jump_around_ld_abs()
257 struct bpf_insn *insn = self->fill_insns; in bpf_fill_rand_ld_dw()
264 struct bpf_insn tmp[2] = { BPF_LD_IMM64(BPF_REG_1, val) }; in bpf_fill_rand_ld_dw()
285 struct bpf_insn *insn = self->fill_insns; in bpf_fill_scale1()
311 struct bpf_insn *insn = self->fill_insns; in bpf_fill_scale2()
[all …]
H A Ddisasm_helpers.h8 struct bpf_insn;
10 struct bpf_insn *disasm_insn(struct bpf_insn *insn, char *buf, size_t buf_sz);
H A Ddisasm.h25 const struct bpf_insn *insn);
27 const struct bpf_insn *insn,
38 const struct bpf_insn *insn,
H A Dtesting_helpers.h19 int bpf_test_load_program(enum bpf_prog_type type, const struct bpf_insn *insns,
55 struct bpf_insn;
59 int get_xlated_program(int fd_prog, struct bpf_insn **buf, __u32 *cnt);
H A Ddisasm_helpers.c22 static const char *print_call_cb(void *private_data, const struct bpf_insn *insn) in print_call_cb()
38 struct bpf_insn *disasm_insn(struct bpf_insn *insn, char *buf, size_t buf_sz) in disasm_insn()
H A Ddisasm.c17 const struct bpf_insn *insn, in __func_get_name()
44 const struct bpf_insn *insn, in __func_imm_name()
140 const struct bpf_insn *insn) in print_bpf_end_insn()
150 const struct bpf_insn *insn) in print_bpf_bswap_insn()
157 static bool is_sdiv_smod(const struct bpf_insn *insn) in is_sdiv_smod()
163 static bool is_movsx(const struct bpf_insn *insn) in is_movsx()
169 static bool is_addr_space_cast(const struct bpf_insn *insn) in is_addr_space_cast()
181 static inline bool is_mov_percpu_addr(const struct bpf_insn *insn) in is_mov_percpu_addr()
187 const struct bpf_insn *insn, in print_bpf_insn()
H A Dtest_tag.c25 static struct bpf_insn prog[BPF_MAXINSNS];
42 struct bpf_insn tmp[] = { in bpf_gen_map_prog()
133 insns *= sizeof(struct bpf_insn); in tag_from_alg()
/linux/tools/bpf/bpftool/
H A Dcfg.c20 struct bpf_insn *start;
21 struct bpf_insn *end;
30 struct bpf_insn *head;
31 struct bpf_insn *tail;
63 static struct func_node *cfg_append_func(struct cfg *cfg, struct bpf_insn *insn) in cfg_append_func()
89 struct bpf_insn *insn) in func_append_bb()
131 static bool cfg_partition_funcs(struct cfg *cfg, struct bpf_insn *cur, in cfg_partition_funcs()
132 struct bpf_insn *end) in cfg_partition_funcs()
167 struct bpf_insn *cur, *end; in func_partition_bb_head()
244 struct bpf_insn *insn) in func_search_bb_with_head()
[all …]
H A Dxlated_dumper.c135 const struct bpf_insn *insn) in print_call_pcrel()
164 const struct bpf_insn *insn) in print_call()
182 const struct bpf_insn *insn, in print_imm()
216 struct bpf_insn *insn = buf; in dump_xlated_json()
301 struct bpf_insn *insn = buf; in dump_xlated_plain()
368 struct bpf_insn *insn_start = buf_start; in dump_xlated_for_graph()
369 struct bpf_insn *insn_end = buf_end; in dump_xlated_for_graph()
370 struct bpf_insn *cur = insn_start; in dump_xlated_for_graph()
/linux/kernel/bpf/
H A Ddisasm.h25 const struct bpf_insn *insn);
27 const struct bpf_insn *insn,
38 const struct bpf_insn *insn,
H A Ddisasm.c17 const struct bpf_insn *insn, in __func_get_name()
44 const struct bpf_insn *insn, in __func_imm_name()
140 const struct bpf_insn *insn) in print_bpf_end_insn()
150 const struct bpf_insn *insn) in print_bpf_bswap_insn()
157 static bool is_sdiv_smod(const struct bpf_insn *insn) in is_sdiv_smod()
163 static bool is_movsx(const struct bpf_insn *insn) in is_movsx()
169 static bool is_addr_space_cast(const struct bpf_insn *insn) in is_addr_space_cast()
181 static inline bool is_mov_percpu_addr(const struct bpf_insn *insn) in is_mov_percpu_addr()
187 const struct bpf_insn *insn, in print_bpf_insn()
H A Dfixups.c16 static bool is_cmpxchg_insn(const struct bpf_insn *insn) in is_cmpxchg_insn()
24 static bool is_addr_space_cast32(struct bpf_prog *prog, const struct bpf_insn *insn) in is_addr_space_cast32()
44 static int insn_def_regno(const struct bpf_insn *insn) in insn_def_regno()
63 static bool bpf_is_reg64(struct bpf_prog *prog, struct bpf_insn *insn) in bpf_is_reg64()
104 int bpf_insn_def32(struct bpf_prog *prog, struct bpf_insn *insn) in bpf_insn_def32()
128 const struct bpf_insn *insn) in bpf_jit_find_kfunc_model()
184 struct bpf_insn *insn, int cnt) in add_kfunc_in_insns()
200 const struct bpf_insn *insn, int idx) in get_callee_stack_depth()
219 struct bpf_insn *insn = new_prog->insnsi; in adjust_insn_aux_data()
305 const struct bpf_insn *patch, u32 len) in bpf_patch_insn_data()
[all …]
H A Dconst_fold.c51 struct bpf_insn *insn, struct bpf_insn *insns, int idx) in const_reg_xfer()
236 struct bpf_insn *insns = env->prog->insnsi; in bpf_compute_const_regs()
261 struct bpf_insn *insn = &insns[idx]; in bpf_compute_const_regs()
342 struct bpf_insn *insns = env->prog->insnsi; in bpf_prune_dead_branches()
349 struct bpf_insn *insn = &insns[i]; in bpf_prune_dead_branches()
/linux/tools/testing/selftests/bpf/prog_tests/
H A Draw_tp_writable_reject_bad_access.c7 static void check_attach_reject(const struct bpf_insn *program, size_t prog_len) in check_attach_reject()
32 const struct bpf_insn program[] = { in test_raw_tp_writable_reject_bad_access()
41 const struct bpf_insn negative_var_off_program[] = { in test_raw_tp_writable_reject_bad_access()
H A Dkptr_xchg_inline.c11 struct bpf_insn *insn = NULL; in test_kptr_xchg_inline()
12 struct bpf_insn exp; in test_kptr_xchg_inline()
H A Draw_tp_writable_test_run.c13 const struct bpf_insn trace_program[] = { in serial_test_raw_tp_writable_test_run()
34 const struct bpf_insn skb_program[] = { in serial_test_raw_tp_writable_test_run()
/linux/drivers/net/ethernet/netronome/nfp/bpf/
H A Dmain.h301 struct bpf_insn insn;
306 struct bpf_insn *paired_st;
462 struct bpf_insn insn = meta->insn; in is_mbpf_helper_call()
470 struct bpf_insn insn = meta->insn; in is_mbpf_pseudo_call()
571 struct bpf_insn *insn);
/linux/arch/loongarch/net/
H A Dbpf_jit.h55 static inline int bpf2la_offset(int bpf_insn, int off, const struct jit_ctx *ctx) in bpf2la_offset() argument
58 bpf_insn++; in bpf2la_offset()
64 return (ctx->offset[bpf_insn + off] - (ctx->offset[bpf_insn] - 1)); in bpf2la_offset()

12345