Function report |
Source Code:kernel\bpf\btf.c |
Create Date:2022-07-28 13:19:22 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:btf_enum_check_kflag_member
Proto:static int btf_enum_check_kflag_member(struct btf_verifier_env *env, const struct btf_type *struct_type, const struct btf_member *member, const struct btf_type *member_type)
Type:int
Parameter:
Type | Parameter | Name |
---|---|---|
struct btf_verifier_env * | env | |
const struct btf_type * | struct_type | |
const struct btf_member * | member | |
const struct btf_type * | member_type |
2401 | int_bitsize = sizeof(int) * BITS_PER_BYTE |
2405 | If Not nr_bits Then |
2406 | If BITS_PER_BYTE_MASKED(struct_bits_off) Then |
2407 | btf_verifier_log_member(env, struct_type, member, "Member is not byte aligned") |
2409 | Return -EINVAL |
2412 | nr_bits = int_bitsize |
2413 | Else if nr_bits > int_bitsize Then |
2414 | btf_verifier_log_member(env, struct_type, member, "Invalid member bitfield_size") |
2416 | Return -EINVAL |
2419 | struct_size = size |
2420 | bytes_end = BITS_ROUNDUP_BYTES(struct_bits_off + nr_bits) |
2421 | If struct_size < bytes_end Then |
2422 | btf_verifier_log_member(env, struct_type, member, "Member exceeds struct_size") |
2424 | Return -EINVAL |
2427 | Return 0 |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |