Function report |
Source Code:kernel\bpf\verifier.c |
Create Date:2022-07-28 12:58:20 |
| Last Modify:2022-05-19 20:02:10 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:runcate register to smaller size (in bytes)* must be called with size < BPF_REG_SIZE
Proto:static void coerce_reg_to_size(struct bpf_reg_state *reg, int size)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct bpf_reg_state * | reg | |
| int | size |
| 2803 | If ( minimum possible (u64)value & ~mask) == ( maximum possible (u64)value & ~mask) Then |
| 2804 | minimum possible (u64)value &= mask |
| 2805 | maximum possible (u64)value &= mask |
| 2806 | Else |
| 2807 | minimum possible (u64)value = 0 |
| 2808 | maximum possible (u64)value = mask |
| Name | Describe |
|---|---|
| check_mem_access | heck whether memory at (regno + off) is accessible for t = (read | write)* if t==write, value_regno is a register which value is stored into memory* if t==read, value_regno is a register which will receive the value from memory* if t==write && |
| adjust_scalar_min_max_vals | WARNING: This function does calculations on 64-bit values, but the actual* execution may occur on 32-bit values. Therefore, things like bitshifts* need extra checks in the 32-bit case. |
| check_alu_op | heck validity of 32-bit and 64-bit arithmetic operations |
| is_branch_taken | mpute branch direction of the expression "if (reg opcode val) goto target;"* and return:* 1 - branch will be taken and "goto target" will be executed* 0 - branch will not be taken and fall-through to next insn* -1 - unknown |
| check_cond_jmp_op |
| 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 |