函数逻辑报告 |
Source Code:kernel\bpf\btf.c |
Create Date:2022-07-27 14:35:20 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:btf_int_check_meta
函数原型:static s32 btf_int_check_meta(struct btf_verifier_env *env, const struct btf_type *t, u32 meta_left)
返回类型:s32
参数:
类型 | 参数 | 名称 |
---|---|---|
struct btf_verifier_env * | env | |
const struct btf_type * | t | |
u32 | meta_left |
1325 | meta_needed等于int_data的长度 |
1328 | 如果meta_left小于meta_needed则 |
1329 | btf_verifier_log_basic(env, t, "meta_left:%u meta_needed:%u", meta_left, meta_needed) |
1332 | 返回:负EINVAL |
1335 | 如果btf_type_vlen(t)则 |
1336 | btf_verifier_log_type(env, t, "vlen != 0") |
1337 | 返回:负EINVAL |
1340 | 如果btf_type_kflag(t)则 |
1341 | btf_verifier_log_type(env, t, "Invalid btf_info kind_flag") |
1342 | 返回:负EINVAL |
1345 | int_data等于btf_type_int(t) |
1346 | 如果int_data按位与BTF_INT_MASK的反则 |
1347 | btf_verifier_log_basic(env, t, "Invalid int_data:%x", int_data) |
1349 | 返回:负EINVAL |
1357 | 返回:负EINVAL |
1360 | 如果BITS_ROUNDUP_BYTES(nr_bits)大于size则 |
1361 | btf_verifier_log_type(env, t, "nr_bits exceeds type_size") |
1362 | 返回:负EINVAL |
1371 | encoding等于BTF_KIND_INT is followed by a u32 and the following* is the 32 bits arrangement:(int_data) |
1376 | btf_verifier_log_type(env, t, "Unsupported encoding") |
1377 | 返回:负Operation is not supported |
1380 | btf_verifier_log_type(env, t, NULL) |
1382 | 返回:meta_needed |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |