Home
last modified time | relevance | path

Searched refs:insn_idx (Results 1 – 22 of 22) sorted by relevance

/linux/kernel/bpf/
H A Ddiagnostics.h58 void bpf_diag_register_type(struct bpf_verifier_env *env, u32 insn_idx, int regno,
60 void bpf_diag_invalid_deref(struct bpf_verifier_env *env, u32 insn_idx, int regno,
63 void bpf_diag_unreadable_reg(struct bpf_verifier_env *env, u32 insn_idx, int regno);
64 void bpf_diag_stack_arg_uninit(struct bpf_verifier_env *env, u32 insn_idx, int nargs,
67 void bpf_diag_memory(struct bpf_verifier_env *env, u32 insn_idx, const char *problem,
69 void bpf_diag_mem_bounds(struct bpf_verifier_env *env, u32 insn_idx, int regno,
72 void bpf_diag_res(struct bpf_verifier_env *env, u32 insn_idx, const char *problem,
74 void bpf_diag_lock(struct bpf_verifier_env *env, u32 insn_idx, const char *problem,
77 void bpf_diag_irq(struct bpf_verifier_env *env, u32 insn_idx, const char *problem,
80 void bpf_diag_call_type(struct bpf_verifier_env *env, u32 insn_idx, int argno, int regno,
[all …]
H A Ddiagnostics.c122 u32 insn_idx : 24; member
212 u32 insn_idx; member
608 static void format_disasm_line(struct bpf_verifier_env *env, int insn_idx, in format_disasm_line() argument
619 line->idx = insn_idx; in format_disasm_line()
623 if (insn_idx < 0 || insn_idx >= env->prog->len) in format_disasm_line()
626 if (insn_idx > 0 && bpf_is_ldimm64(&env->prog->insnsi[insn_idx - 1])) in format_disasm_line()
629 insn = &env->prog->insnsi[insn_idx]; in format_disasm_line()
630 if (bpf_is_ldimm64(insn) && insn_idx + 1 >= env->prog->len) in format_disasm_line()
774 static void diag_print_insn_context(struct bpf_verifier_env *env, u32 insn_idx, in diag_print_insn_context() argument
783 format_disasm_line(env, insn_idx + row, &disasm_lines[i]); in diag_print_insn_context()
[all …]
H A Dstates.c12 static bool is_may_goto_insn_at(struct bpf_verifier_env *env, int insn_idx) in is_may_goto_insn_at() argument
14 return bpf_is_may_goto_insn(&env->prog->insnsi[insn_idx]); in is_may_goto_insn_at()
17 static bool is_iter_next_insn(struct bpf_verifier_env *env, int insn_idx) in is_iter_next_insn() argument
19 return env->insn_aux_data[insn_idx].is_iter_next; in is_iter_next_insn()
78 u32 i, scc, insn_idx; in compute_scc_callchain() local
82 insn_idx = bpf_frame_insn_idx(st, i); in compute_scc_callchain()
83 scc = env->insn_aux_data[insn_idx].scc; in compute_scc_callchain()
88 callchain->callsites[i] = insn_idx; in compute_scc_callchain()
236 st->insn_idx); in add_scc_backedge()
943 struct bpf_func_state *cur, u32 insn_idx, enum exact_level exact) in func_states_equal() argument
[all …]
H A Dliveness.c40 u32 insn_idx; member
149 static int relative_idx(struct func_instance *instance, u32 insn_idx) in relative_idx() argument
151 return insn_idx - instance->subprog_start; in relative_idx()
155 u32 frame, u32 insn_idx) in get_frame_masks() argument
160 return &instance->frames[frame][relative_idx(instance, insn_idx)]; in get_frame_masks()
164 u32 frame, u32 insn_idx) in alloc_frame_masks() argument
175 return get_frame_masks(instance, frame, insn_idx); in alloc_frame_masks()
179 static int mark_stack_read(struct func_instance *instance, u32 frame, u32 insn_idx, spis_t mask) in mark_stack_read() argument
183 masks = alloc_frame_masks(instance, frame, insn_idx); in mark_stack_read()
190 static int mark_stack_write(struct func_instance *instance, u32 frame, u32 insn_idx, spis_t mask) in mark_stack_write() argument
[all …]
H A Dverifier.c192 int insn_idx; member
207 static int acquire_reference(struct bpf_verifier_env *env, int insn_idx, int parent_id);
672 enum bpf_arg_type arg_type, int insn_idx, in mark_stack_slots_dynptr() argument
724 id = acquire_reference(env, insn_idx, parent_id); in mark_stack_slots_dynptr()
829 env, env->insn_idx, "referenced dynptr overwrite", in destroy_if_dynptr_stack_slot()
935 struct bpf_reg_state *reg, int insn_idx, in mark_stack_slots_iter() argument
945 id = acquire_reference(env, insn_idx, 0); in mark_stack_slots_iter()
1063 static int acquire_irq_state(struct bpf_verifier_env *env, int insn_idx);
1068 struct bpf_reg_state *reg, int insn_idx, in mark_stack_slot_irq_flag() argument
1080 id = acquire_irq_state(env, insn_idx); in mark_stack_slot_irq_flag()
[all …]
H A Dbacktrack.c26 env->insn_idx, env->cur_hist_ent->flags, insn_flags); in bpf_push_jmp_history()
32 env->insn_idx, env->cur_hist_ent->linked_regs); in bpf_push_jmp_history()
45 p->idx = env->insn_idx; in bpf_push_jmp_history()
106 u32 hist_end, int insn_idx) in get_jmp_hist_entry() argument
108 if (hist_end > 0 && st->jmp_history[hist_end - 1].idx == insn_idx) in get_jmp_hist_entry()
807 int last_idx = starting_state->insn_idx; in bpf_mark_chain_precision()
H A Dfixups.c303 if (desc->insn_idx <= off) in adjust_poke_descs()
305 desc->insn_idx += len - 1; in adjust_poke_descs()
1162 if (poke->insn_idx < subprog_end && in jit_subprogs()
1163 poke->insn_idx >= subprog_start) in jit_subprogs()
1950 .insn_idx = i + delta, in bpf_do_misc_fixups()
H A Dlog.c811 verbose(env, "%d:", env->insn_idx); in print_insn_state()
H A Dcore.c1642 int insn_idx) in bpf_insn_is_indirect_target() argument
1646 insn_idx += prog->aux->subprog_start; in bpf_insn_is_indirect_target()
1647 return env->insn_aux_data[insn_idx].indirect_target; in bpf_insn_is_indirect_target()
/linux/include/linux/
H A Dbpf_verifier.h328 int insn_idx; member
499 u32 insn_idx; member
919 u32 insn_idx; member
1117 static inline bool bpf_is_prune_point(struct bpf_verifier_env *env, int insn_idx) in bpf_is_prune_point() argument
1119 return env->insn_aux_data[insn_idx].prune_point; in bpf_is_prune_point()
1127 static inline bool bpf_is_force_checkpoint(struct bpf_verifier_env *env, int insn_idx) in bpf_is_force_checkpoint() argument
1129 return env->insn_aux_data[insn_idx].force_checkpoint; in bpf_is_force_checkpoint()
1137 static inline bool bpf_calls_callback(struct bpf_verifier_env *env, int insn_idx) in bpf_calls_callback() argument
1139 return env->insn_aux_data[insn_idx].calls_callback; in bpf_calls_callback()
1152 static inline bool bpf_is_jump_target(struct bpf_verifier_env *env, int insn_idx) in bpf_is_jump_target() argument
[all …]
H A Dbpf.h1173 int insn_idx, int prev_insn_idx);
1603 int insn_idx);
1677 u32 insn_idx; member
/linux/tools/lib/bpf/
H A Drelo_core.c987 int insn_idx, struct bpf_insn *insn) in bpf_core_poison_insn() argument
990 prog_name, relo_idx, insn_idx); in bpf_core_poison_insn()
1042 int insn_idx, const struct bpf_core_relo *relo, in bpf_core_patch_insn() argument
1056 bpf_core_poison_insn(prog_name, relo_idx, insn_idx + 1, insn + 1); in bpf_core_patch_insn()
1057 bpf_core_poison_insn(prog_name, relo_idx, insn_idx, insn); in bpf_core_patch_insn()
1072 insn_idx, insn->imm, (unsigned long long)orig_val, in bpf_core_patch_insn()
1079 prog_name, relo_idx, insn_idx, in bpf_core_patch_insn()
1087 prog_name, relo_idx, insn_idx, insn->off, (unsigned long long)orig_val, in bpf_core_patch_insn()
1093 prog_name, relo_idx, insn_idx, (unsigned long long)new_val); in bpf_core_patch_insn()
1099 prog_name, relo_idx, insn_idx); in bpf_core_patch_insn()
[all …]
H A Dbpf_gen_internal.h12 int insn_idx; member
73 bool is_typeless, bool is_ld64, int kind, int insn_idx);
H A Dlibbpf.c384 int insn_idx; member
4649 __u32 insn_idx, const char *sym_name, in bpf_program__record_reloc() argument
4652 struct bpf_insn *insn = &prog->insns[insn_idx]; in bpf_program__record_reloc()
4662 prog->name, sym_name, insn_idx, insn->code); in bpf_program__record_reloc()
4682 prog->name, i, ext->name, ext->sym_idx, insn_idx); in bpf_program__record_reloc()
4687 reloc_desc->insn_idx = insn_idx; in bpf_program__record_reloc()
4711 reloc_desc->insn_idx = insn_idx; in bpf_program__record_reloc()
4734 reloc_desc->insn_idx = insn_idx; in bpf_program__record_reloc()
4746 prog->name, insn_idx); in bpf_program__record_reloc()
4750 reloc_desc->insn_idx = insn_idx; in bpf_program__record_reloc()
[all …]
H A Drelo_core.h90 int insn_idx, const struct bpf_core_relo *relo,
H A Dgen_loader.c613 bool is_typeless, bool is_ld64, int kind, int insn_idx) in bpf_gen__record_extern() argument
629 relo->insn_idx = insn_idx; in bpf_gen__record_extern()
922 relo->kind, relo->name, relo->insn_idx, relo->is_ld64 ? "ld64" : "call"); in emit_relo()
923 insn = insns + sizeof(struct bpf_insn) * relo->insn_idx; in emit_relo()
/linux/tools/objtool/
H A Ddisas.c57 int insn_idx; /* index of the next instruction to print */ member
724 dalt->insn_idx = 0; in disas_alt_init()
892 j = dalt->insn_idx; in disas_alt_print_insn()
902 dalt->insn_idx = j; in disas_alt_print_insn()
904 dalt->insn_idx = -1; in disas_alt_print_insn()
/linux/drivers/net/ethernet/netronome/nfp/bpf/
H A Dmain.h566 int nfp_verify_insn(struct bpf_verifier_env *env, int insn_idx,
587 unsigned int insn_idx);
/linux/arch/powerpc/net/
H A Dbpf_jit.h225 struct codegen_context *ctx, int insn_idx,
H A Dbpf_jit_comp.c393 struct codegen_context *ctx, int insn_idx, int jmp_off, in bpf_add_extable_entry() argument
415 pc = (unsigned long)&image[insn_idx]; in bpf_add_extable_entry()
/linux/tools/testing/selftests/bpf/
H A Dtest_verifier.c81 int insn_idx; member
997 prog[fixup_kfunc_btf_id->insn_idx].off = 1; in fixup_prog_kfuncs()
1002 prog[fixup_kfunc_btf_id->insn_idx].imm = btf_id; in fixup_prog_kfuncs()
/linux/tools/testing/selftests/bpf/prog_tests/
H A Dreg_bounds.c1268 int insn_idx; in parse_range_cmp_log()
1283 sprintf(buf, "%d: (%s) %s = %s%d", specs[i].insn_idx,
1233 int insn_idx; parse_range_cmp_log() member