Function report |
Source Code:kernel\bpf\arraymap.c |
Create Date:2022-07-28 13:12:07 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:array_of_map_gen_lookup
Proto:static u32 array_of_map_gen_lookup(struct bpf_map *map, struct bpf_insn *insn_buf)
Type:u32
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct bpf_map * | map | |
| struct bpf_insn * | insn_buf |
| 1052 | insn++ = ALU ops on immediates, bpf_add|sub|...: dst_reg += imm32 (BPF_ADD, map_ptr, offsetof(structbpf_array, value)) |
| 1053 | insn++ = Memory load, dst_reg = *(uint *) (src_reg + off16) (32-bit , ret, index, 0) |
| 1054 | If unpriv_array Then |
| 1055 | insn++ = Conditional jumps against immediates, if (dst_reg 'op' imm32) goto pc + off16 (BPF_JGE, ret, max_entries, 6) |
| 1056 | insn++ = BPF_ALU32_IMM(BPF_AND, ret, index_mask) |
| 1057 | Else |
| 1062 | Else insn++ = ALU ops on immediates, bpf_add|sub|...: dst_reg += imm32 (BPF_MUL, ret, elem_size) |
| 1065 | insn++ = Memory load, dst_reg = *(uint *) (src_reg + off16) (double word (64-bit) , ret, ret, 0) |
| 1066 | insn++ = Conditional jumps against immediates, if (dst_reg 'op' imm32) goto pc + off16 (BPF_JEQ, ret, 0, 1) |
| 1067 | insn++ = Conditional jumps against immediates, if (dst_reg 'op' imm32) goto pc + off16 (BPF_JA, 0, 0, 1) |
| 1068 | insn++ = Short form of mov, dst_reg = imm32 (ret, 0) |
| 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 |