函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\bpf\verifier.c Create Date:2022-07-27 14:13:42
Last Modify:2022-05-19 20:02:10 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:record_func_key

函数原型:static int record_func_key(struct bpf_verifier_env *env, struct bpf_call_arg_meta *meta, int func_id, int insn_idx)

返回类型:int

参数:

类型参数名称
struct bpf_verifier_env *env
struct bpf_call_arg_meta *meta
intfunc_id
intinsn_idx
4133  aux等于array of per-insn state [insn_idx]
4134  regs等于cur_regs(env)
4135  map等于map_ptr
4140  如果func_id不等于BPF_FUNC_tail_call则返回:0
4142  如果非mapmap_type不等于BPF_MAP_TYPE_PROG_ARRAY
4143  verbose(env, "kernel subsystem misconfigured verifier\n")
4144  返回:负EINVAL
4147  range等于A value that's unknown except that @min <= value <= @max
4148  reg等于regs[BPF_REG_3]
4150  如果非register_is_const(reg)或非Returns true if @b represents a subset of @a.
4151  bpf_map_key_store(aux, BPF_MAP_KEY_POISON)
4152  返回:0
4155  err等于mark_chain_precision(env, BPF_REG_3)
4156  如果err则返回:err
4159  val等于value
4160  如果bpf_map_key_unseen(aux)则bpf_map_key_store(aux, val)
4162  否则如果非bpf_map_key_poisoned(aux)且bpf_map_key_immediate(aux)不等于valbpf_map_key_store(aux, BPF_MAP_KEY_POISON)
4165  返回:0
调用者
名称描述
check_helper_call