Function report |
Source Code:kernel\bpf\btf.c |
Create Date:2022-07-28 13:20:32 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:btf_parse
Proto:static struct btf *btf_parse(void __user *btf_data, u32 btf_data_size, u32 log_level, char __user *log_ubuf, u32 log_size)
Type:struct btf
Parameter:
Type | Parameter | Name |
---|---|---|
void __user * | btf_data | |
u32 | btf_data_size | |
u32 | log_level | |
char __user * | log_ubuf | |
u32 | log_size |
3364 | struct btf_verifier_env * env = NULL |
3370 | If btf_data_size > 16MB for 64k structs and each has 16 members and* a few MB spaces for the string section.* The hard limit is S32_MAX. Then Return ERR_PTR( - E2BIG) |
3373 | env = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). |
3394 | btf = kzalloc - allocate memory. The memory is set to zero.*@size: how many bytes of memory are required.*@flags: the type of memory to allocate (see kmalloc). |
3395 | If Not btf Then |
3402 | If Not data Then |
3408 | data_size = btf_data_size |
3410 | If copy_from_user(data, btf_data, btf_data_size) Then |
3415 | err = btf_parse_hdr(env) |
3419 | nohdr_data = data + hdr_len |
3421 | err = btf_parse_str_sec(env) |
3425 | err = btf_parse_type_sec(env) |
3429 | If level && bpf_verifier_log_full(log) Then |
3434 | btf_verifier_env_free(env) |
3436 | Return btf |
3438 | errout : |
3439 | btf_verifier_env_free(env) |
Name | Describe |
---|---|
btf_new_fd |
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 |