函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\bpf\btf.c Create Date:2022-07-27 14:37:46
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:btf_resolve

函数原型:static int btf_resolve(struct btf_verifier_env *env, const struct btf_type *t, u32 type_id)

返回类型:int

参数:

类型参数名称
struct btf_verifier_env *env
const struct btf_type *t
u32type_id
3108  save_log_type_id等于log_type_id
3110  err等于0
3112  resolve_mode等于 To Be Determined
3113  env_stack_push(env, t, type_id)
3114  当非errv等于env_stack_peak(env)循环
3115  log_type_id等于type_id
3116  err等于resolve(env, v)
3119  log_type_id等于type_id
3120  如果err恒等于负E2BIG
3121  btf_verifier_log_type(env, t, "Exceeded max resolving depth:%u", MAX_RESOLVE_DEPTH)
3124  否则如果err恒等于负EEXIST
3125  btf_verifier_log_type(env, t, "Loop detected")
3129  如果非err且非btf_resolve_valid(env, t, type_id)则
3130  btf_verifier_log_type(env, t, "Invalid resolve state")
3131  err等于负EINVAL
3134  log_type_id等于save_log_type_id
3135  返回:err
调用者
名称描述
btf_func_proto_check
btf_check_all_types