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 |