函数逻辑报告 |
Source Code:kernel\bpf\verifier.c |
Create Date:2022-07-27 14:11:52 |
Last Modify:2022-05-19 20:02:10 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:starting from main bpf function walk all instructions of the function* and recursively walk all callees that given function can call
函数原型:static int check_max_stack_depth(struct bpf_verifier_env *env)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct bpf_verifier_env * | env |
2671 | subprog等于subprog_info |
2676 | process_func : |
2684 | 返回:负EACCES |
2686 | continue_func : |
2688 | 以i小于subprog_end循环 |
2689 | 如果 opcode 不等于BPF_JMP按位或unction call 的值则继续下一循环 |
2691 | 如果 source register 不等于when bpf_call->src_reg == BPF_PSEUDO_CALL, bpf_call->imm == pc-relative* offset to another bpf function则继续下一循环 |
2698 | i等于i加 signed immediate constant 加1 |
2699 | idx等于find_subprog(env, i) |
2700 | 如果idx小于0则 |
2705 | frame自加 |
2706 | 如果frame大于等于MAX_CALL_FRAMES则 |
2711 | 转到:process_func |
2716 | 如果frame恒等于0则返回:0 |
2719 | frame自减 |
2722 | 转到:continue_func |
名称 | 描述 |
---|---|
bpf_check |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |