函数逻辑报告 |
Source Code:kernel\bpf\cgroup.c |
Create Date:2022-07-27 14:47:31 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:sysctl_convert_ctx_access
函数原型:static u32 sysctl_convert_ctx_access(enum bpf_access_type type, const struct bpf_insn *si, struct bpf_insn *insn_buf, struct bpf_prog *prog, u32 *target_size)
返回类型:u32
参数:
类型 | 参数 | 名称 |
---|---|---|
enum bpf_access_type | type | |
const struct bpf_insn * | si | |
struct bpf_insn * | insn_buf | |
struct bpf_prog * | prog | |
u32 * | target_size |
1347 | 当: signed offset 恒等于offsetof(structbpf_sysctl, write) |
1354 | 退出 |
1355 | 当: signed offset 恒等于offsetof(structbpf_sysctl, file_pos) |
1364 | 如果 source register 恒等于treg或 dest register 恒等于treg则treg先自减 |
1366 | 如果 source register 恒等于treg或 dest register 恒等于treg则treg先自减 |
1368 | insn自加等于Memory store, *(uint *) (dst_reg + off16) = src_reg (double word (64-bit) , dest register , treg, offsetof(structbpf_sysctl_kern, tmp_reg)) |
1371 | insn自加等于Memory load, dst_reg = *(uint *) (src_reg + off16) (BPF_FIELD_SIZEOF(structbpf_sysctl_kern, ppos), treg, dest register , offsetof(structbpf_sysctl_kern, ppos)) |
1382 | 否则 |
1383 | insn自加等于Memory load, dst_reg = *(uint *) (src_reg + off16) (BPF_FIELD_SIZEOF(structbpf_sysctl_kern, ppos), dest register , source register , offsetof(structbpf_sysctl_kern, ppos)) |
1387 | read_size等于bpf_size_to_bytes(ld/ldx fields ( opcode )) |
1393 | target_size等于sizeof(u32) |
1394 | 退出 |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |