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 |