函数逻辑报告 |
Source Code:kernel\bpf\local_storage.c |
Create Date:2022-07-27 14:31:21 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:cgroup_storage_map_alloc
函数原型:static struct bpf_map *cgroup_storage_map_alloc(union bpf_attr *attr)
返回类型:struct bpf_map
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| union bpf_attr * | attr |
| 278 | 如果 size of key in bytes 不等于sizeof(structbpf_cgroup_storage_key)则返回:错误号 |
| 281 | 如果 size of value in bytes 恒等于0则返回:错误号 |
| 284 | 如果 size of value in bytes 大于PAGE_SIZE则返回:错误号 |
| 287 | 如果 BPF_MAP_CREATE related * flags defined above.按位与LOCAL_STORAGE_CREATE_FLAG_MASK的反或非bpf_map_flags_access_ok( BPF_MAP_CREATE related * flags defined above.)则返回:错误号 |
| 291 | 如果 max number of entries in a map 则返回:错误号 |
| 295 | ret等于bpf_map_charge_init( & mem, sizeof(structbpf_cgroup_storage_map)) |
| 299 | map等于kmalloc_node(sizeof(structbpf_cgroup_storage_map), __GFP_ZERO | GFP_USER, numa_node) |
| 301 | 如果非map则 |
| 302 | bpf_map_charge_finish( & mem) |
| 303 | 返回:错误号 |
| 306 | bpf_map_charge_move( & memory, & mem) |
| 309 | bpf_map_init_from_attr( & map, attr) |
| 311 | spin_lock_init( & lock) |
| 312 | root = |
| 313 | 初始化链表头 |
| 315 | 返回:map |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |