函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:btf_verifier_log_member

函数原型:static void btf_verifier_log_member(struct btf_verifier_env *env, const struct btf_type *struct_type, const struct btf_member *member, const char *fmt, ...)

返回类型:void

参数:

类型参数名称
struct btf_verifier_env *env
const struct btf_type *struct_type
const struct btf_member *member
const char *fmt
723  log等于log
724  btf等于btf
727  如果非bpf_verifier_log_needed(log)则返回
730  如果level恒等于kernel internal flag 且非fmt则返回
738  如果phase不等于CHECK_METAbtf_verifier_log_type(env, struct_type, NULL)
741  如果btf_type_kflag(struct_type)则__btf_verifier_log(log, "\t%s type_id=%u bitfield_size=%u bits_offset=%u", __btf_name_by_offset(btf, name_off), type, If the struct/union type info kind_flag is set, the* following two macros are used to access bitfield_size* and bit_offset from btf_member.offset.(If the type info kind_flag is set, the btf_member offset* contains both member bitfield size and bit offset. The* bitfield size is set for bitfield members. If the type* info kind_flag is not set, the offset contains only bit* offset.), BTF_MEMBER_BIT_OFFSET(If the type info kind_flag is set, the btf_member offset* contains both member bitfield size and bit offset. The* bitfield size is set for bitfield members. If the type* info kind_flag is not set, the offset contains only bit* offset.))
748  否则__btf_verifier_log(log, "\t%s type_id=%u bits_offset=%u", __btf_name_by_offset(btf, name_off), type, If the type info kind_flag is set, the btf_member offset* contains both member bitfield size and bit offset. The* bitfield size is set for bitfield members. If the type* info kind_flag is not set, the offset contains only bit* offset.)
753  如果fmtfmt
754  __btf_verifier_log(log, " ")
755  va_start(args, fmt)
756  bpf_verifier_vlog(log, fmt, args)
757  va_end(args)
760  __btf_verifier_log(log, "\n")
调用者
名称描述
btf_generic_check_kflag_memberUsed for ptr, array and struct/union type members.* int, enum and modifier types have their specific callback functions.
btf_int_check_member
btf_int_check_kflag_member
btf_modifier_check_member
btf_modifier_check_kflag_member
btf_ptr_check_member
btf_array_check_member
btf_struct_check_member
btf_struct_check_meta
btf_struct_resolve
btf_enum_check_member
btf_enum_check_kflag_member