Function report |
Source Code:kernel\bpf\verifier.c |
Create Date:2022-07-28 12:59:44 |
Last Modify:2022-05-19 20:02:10 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:record_func_map
Proto:static int record_func_map(struct bpf_verifier_env *env, struct bpf_call_arg_meta *meta, int func_id, int insn_idx)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct bpf_verifier_env * | env | |
struct bpf_call_arg_meta * | meta | |
int | func_id | |
int | insn_idx |
4090 | aux = array of per-insn state [insn_idx] |
4093 | If func_id != BPF_FUNC_tail_call && func_id != BPF_FUNC_map_lookup_elem && func_id != BPF_FUNC_map_update_elem && func_id != BPF_FUNC_map_delete_elem && func_id != BPF_FUNC_map_push_elem && func_id != BPF_FUNC_map_pop_elem && func_id != BPF_FUNC_map_peek_elem Then Return 0 |
4102 | If (map == NULL) Then |
4111 | If map_flags & Flags for accessing BPF object from program side. && ( func_id == BPF_FUNC_map_delete_elem || func_id == BPF_FUNC_map_update_elem || func_id == BPF_FUNC_map_push_elem || func_id == BPF_FUNC_map_pop_elem ) Then |
4120 | If Not BPF_MAP_PTR( pointer/poison value for maps ) Then bpf_map_ptr_store(aux, map_ptr, unpriv_array) |
4123 | Else if BPF_MAP_PTR( pointer/poison value for maps ) != map_ptr Then bpf_map_ptr_store(aux, BPF_MAP_PTR_POISON, unpriv_array) |
4126 | Return 0 |
Name | Describe |
---|---|
check_helper_call |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |