drivers/hid/bpf/hid_bpf_struct_ops.c
89
t = btf_type_by_id(reg->btf, reg->btf_id);
include/linux/bpf.h
1053
u32 btf_id;
include/linux/bpf.h
1616
u32 btf_id;
include/linux/bpf.h
237
u32 btf_id;
include/linux/bpf.h
3050
const char *field_name, u32 btf_id, const char *suffix);
include/linux/bpf_lsm.h
31
bool bpf_lsm_is_sleepable_hook(u32 btf_id);
include/linux/bpf_lsm.h
58
static inline bool bpf_lsm_is_sleepable_hook(u32 btf_id)
include/linux/bpf_verifier.h
1048
struct btf *btf, u32 btf_id)
include/linux/bpf_verifier.h
1051
return ((u64)tgt_prog->aux->id << 32) | btf_id;
include/linux/bpf_verifier.h
1053
return ((u64)btf_obj_id(btf) << 32) | 0x80000000 | btf_id;
include/linux/bpf_verifier.h
1057
static inline void bpf_trampoline_unpack_key(u64 key, u32 *obj_id, u32 *btf_id)
include/linux/bpf_verifier.h
1061
if (btf_id)
include/linux/bpf_verifier.h
1062
*btf_id = key & 0x7FFFFFFF;
include/linux/bpf_verifier.h
1073
u32 btf_id,
include/linux/bpf_verifier.h
1295
const char *iter_type_str(const struct btf *btf, u32 btf_id);
include/linux/bpf_verifier.h
592
u32 btf_id; /* btf_id for struct typed var */
include/linux/bpf_verifier.h
63
u32 btf_id;
include/linux/bpf_verifier.h
709
u32 btf_id;
include/linux/bpf_verifier.h
89
u32 btf_id;
include/linux/btf.h
128
u32 btf_id;
include/linux/btf.h
133
u32 btf_id;
include/linux/btf.h
586
s32 btf_find_dtor_kfunc(struct btf *btf, u32 btf_id);
include/linux/btf.h
589
struct btf_struct_meta *btf_find_struct_meta(const struct btf *btf, u32 btf_id);
include/linux/btf.h
653
static inline s32 btf_find_dtor_kfunc(struct btf *btf, u32 btf_id)
include/linux/btf.h
662
static inline struct btf_struct_meta *btf_find_struct_meta(const struct btf *btf, u32 btf_id)
include/net/xdp.h
656
bool bpf_dev_bound_kfunc_id(u32 btf_id);
include/net/xdp.h
666
static inline bool bpf_dev_bound_kfunc_id(u32 btf_id) { return false; }
include/uapi/linux/bpf.h
1710
__u32 btf_id;
include/uapi/linux/bpf.h
6683
__u32 btf_id;
include/uapi/linux/bpf.h
6715
__u32 btf_id;
io_uring/bpf-ops.c
90
const struct btf_type *t = btf_type_by_id(reg->btf, reg->btf_id);
kernel/bpf/bpf_iter.c
13
u32 btf_id; /* cached value */
kernel/bpf/bpf_iter.c
334
tinfo->btf_id = prog->aux->attach_btf_id;
kernel/bpf/bpf_iter.c
350
if (iter->btf_id && iter->btf_id == prog_btf_id) {
kernel/bpf/bpf_iter.c
377
if (tinfo->btf_id == prog->aux->attach_btf_id) {
kernel/bpf/bpf_iter.c
538
if (iter->btf_id == prog_btf_id) {
kernel/bpf/bpf_lsm.c
119
u32 btf_id = prog->aux->attach_btf_id;
kernel/bpf/bpf_lsm.c
128
if (btf_id_set_contains(&bpf_lsm_disabled_hooks, btf_id)) {
kernel/bpf/bpf_lsm.c
130
btf_id, func_name);
kernel/bpf/bpf_lsm.c
134
if (!btf_id_set_contains(&bpf_lsm_hooks, btf_id)) {
kernel/bpf/bpf_lsm.c
136
btf_id, func_name);
kernel/bpf/bpf_lsm.c
401
bool bpf_lsm_is_sleepable_hook(u32 btf_id)
kernel/bpf/bpf_lsm.c
403
return btf_id_set_contains(&sleepable_lsm_hooks, btf_id);
kernel/bpf/bpf_struct_ops.c
268
info->btf_id = arg_btf_id;
kernel/bpf/btf.c
3991
field->kptr.btf_id = id;
kernel/bpf/btf.c
4222
u32 btf_id;
kernel/bpf/btf.c
4231
rec->fields[i].kptr.btf_id);
kernel/bpf/btf.c
4241
btf_id = rec->fields[i].graph_root.value_btf_id;
kernel/bpf/btf.c
4242
meta = btf_find_struct_meta(btf, btf_id);
kernel/bpf/btf.c
5838
type->btf_id = i;
kernel/bpf/btf.c
5859
struct btf_struct_meta *btf_find_struct_meta(const struct btf *btf, u32 btf_id)
kernel/bpf/btf.c
5863
BUILD_BUG_ON(offsetof(struct btf_struct_meta, btf_id) != 0);
kernel/bpf/btf.c
5867
return bsearch(&btf_id, tab->types, tab->cnt, sizeof(tab->types[0]), btf_id_cmp_func);
kernel/bpf/btf.c
6975
if (!ctx_arg_info->btf_id) {
kernel/bpf/btf.c
6982
info->btf_id = ctx_arg_info->btf_id;
kernel/bpf/btf.c
7039
info->btf_id = ret;
kernel/bpf/btf.c
7047
info->btf_id = t->type;
kernel/bpf/btf.c
7060
info->btf_id = t->type;
kernel/bpf/btf.c
7070
tname, arg, info->btf_id, btf_type_str(t),
kernel/bpf/btf.c
7363
u32 id = reg->btf_id;
kernel/bpf/btf.c
7485
static int __get_type_size(struct btf *btf, u32 btf_id,
kernel/bpf/btf.c
7491
if (!btf_id)
kernel/bpf/btf.c
7494
t = btf_type_by_id(btf, btf_id);
kernel/bpf/btf.c
7715
u32 btf_id = 0;
kernel/bpf/btf.c
7722
btf_id = prog->aux->func_info[0].type_id;
kernel/bpf/btf.c
7723
if (!btf_id)
kernel/bpf/btf.c
7726
t1 = btf_type_by_id(btf1, btf_id);
kernel/bpf/btf.c
7846
u32 i, nargs, btf_id;
kernel/bpf/btf.c
7857
btf_id = prog->aux->func_info[subprog].type_id;
kernel/bpf/btf.c
7858
if (!btf_id) {
kernel/bpf/btf.c
7865
fn_t = btf_type_by_id(btf, btf_id);
kernel/bpf/btf.c
7994
sub->args[i].btf_id = kern_type_id;
kernel/bpf/btf.c
8026
sub->args[i].btf_id = kern_type_id;
kernel/bpf/btf.c
8601
int btf_id;
kernel/bpf/btf.c
8610
t = btf_type_skip_modifiers(btf, t->type, &btf_id);
kernel/bpf/btf.c
8618
return btf_id;
kernel/bpf/btf.c
8629
int btf_id;
kernel/bpf/btf.c
8640
btf_id = btf_check_iter_arg(btf, func, 0);
kernel/bpf/btf.c
8641
if (btf_id < 0)
kernel/bpf/btf.c
8642
return btf_id;
kernel/bpf/btf.c
8647
t = btf_type_by_id(btf, btf_id);
kernel/bpf/btf.c
9021
s32 btf_find_dtor_kfunc(struct btf *btf, u32 btf_id)
kernel/bpf/btf.c
9031
BUILD_BUG_ON(offsetof(struct btf_id_dtor_kfunc, btf_id) != 0);
kernel/bpf/btf.c
9032
dtor = bsearch(&btf_id, tab->dtors, tab->cnt, sizeof(tab->dtors[0]), btf_id_cmp_func);
kernel/bpf/btf.c
9142
tab->dtors[i].btf_id = btf_relocate_id(btf, tab->dtors[i].btf_id);
kernel/bpf/btf.c
9576
const char *field_name, u32 btf_id, const char *suffix)
kernel/bpf/btf.c
9586
walk_type = btf_type_by_id(btf, reg->btf_id);
kernel/bpf/btf.c
9614
if (btf_id == id && !strcmp(field_name, m_name))
kernel/bpf/cgroup_iter.c
304
bpf_cgroup_reg_info.ctx_arg_info[0].btf_id = bpf_cgroup_btf_id[0];
kernel/bpf/cpumask.c
520
.btf_id = cpumask_dtor_ids[0],
kernel/bpf/crypto.c
384
.btf_id = bpf_crypto_dtor_ids[0],
kernel/bpf/dmabuf_iter.c
140
bpf_dmabuf_reg_info.ctx_arg_info[0].btf_id = bpf_dmabuf_btf_id[0];
kernel/bpf/helpers.c
4874
.btf_id = generic_dtor_ids[0],
kernel/bpf/helpers.c
4879
.btf_id = generic_dtor_ids[2],
kernel/bpf/kmem_cache_iter.c
234
bpf_kmem_cache_reg_info.ctx_arg_info[0].btf_id = bpf_kmem_cache_btf_id[0];
kernel/bpf/link_iter.c
102
bpf_link_reg_info.ctx_arg_info[0].btf_id = *btf_bpf_link_id;
kernel/bpf/log.c
473
const char *iter_type_str(const struct btf *btf, u32 btf_id)
kernel/bpf/log.c
475
if (!btf || btf_id == 0)
kernel/bpf/log.c
479
return btf_type_name(btf, btf_id) + sizeof(ITER_PREFIX) - 1;
kernel/bpf/log.c
662
verbose(env, "%s", btf_type_name(reg->btf, reg->btf_id));
kernel/bpf/log.c
784
iter_type_str(reg->iter.btf, reg->iter.btf_id),
kernel/bpf/map_iter.c
186
bpf_map_reg_info.ctx_arg_info[0].btf_id = *btf_bpf_map_id;
kernel/bpf/preload/iterators/iterators.bpf.c
59
static const char *get_name(struct btf *btf, long btf_id, const char *fallback)
kernel/bpf/preload/iterators/iterators.bpf.c
69
bpf_probe_read_kernel(&t, sizeof(t), types + btf_id);
kernel/bpf/prog_iter.c
102
bpf_prog_reg_info.ctx_arg_info[0].btf_id = *btf_bpf_prog_id;
kernel/bpf/states.c
815
old_reg->iter.btf_id != cur_reg->iter.btf_id ||
kernel/bpf/syscall.c
217
t = btf_type_by_id(field->kptr.btf, field->kptr.btf_id);
kernel/bpf/syscall.c
2648
struct btf *attach_btf, u32 btf_id,
kernel/bpf/syscall.c
2651
if (btf_id) {
kernel/bpf/syscall.c
2652
if (btf_id > BTF_MAX_TYPE)
kernel/bpf/syscall.c
2669
if (attach_btf && (!btf_id || dst_prog))
kernel/bpf/syscall.c
3571
u32 btf_id,
kernel/bpf/syscall.c
3609
if (!!tgt_prog_fd != !!btf_id) {
kernel/bpf/syscall.c
3633
key = bpf_trampoline_compute_key(tgt_prog, NULL, btf_id);
kernel/bpf/syscall.c
3701
btf_id = prog->aux->attach_btf_id;
kernel/bpf/syscall.c
3702
key = bpf_trampoline_compute_key(NULL, prog->aux->attach_btf, btf_id);
kernel/bpf/syscall.c
3713
err = bpf_check_attach_target(NULL, prog, tgt_prog, btf_id,
kernel/bpf/syscall.c
5072
info.btf_id = btf_obj_id(prog->aux->btf);
kernel/bpf/syscall.c
5329
info.btf_id = btf_obj_id(map->btf);
kernel/bpf/syscall.c
5531
return btf_get_fd_by_id(attr->btf_id);
kernel/bpf/syscall.c
848
field->kptr.btf_id);
kernel/bpf/task_iter.c
1176
task_reg_info.ctx_arg_info[0].btf_id = btf_tracing_ids[BTF_TRACING_TYPE_TASK];
kernel/bpf/task_iter.c
1181
task_file_reg_info.ctx_arg_info[0].btf_id = btf_tracing_ids[BTF_TRACING_TYPE_TASK];
kernel/bpf/task_iter.c
1182
task_file_reg_info.ctx_arg_info[1].btf_id = btf_tracing_ids[BTF_TRACING_TYPE_FILE];
kernel/bpf/task_iter.c
1187
task_vma_reg_info.ctx_arg_info[0].btf_id = btf_tracing_ids[BTF_TRACING_TYPE_TASK];
kernel/bpf/task_iter.c
1188
task_vma_reg_info.ctx_arg_info[1].btf_id = btf_tracing_ids[BTF_TRACING_TYPE_VMA];
kernel/bpf/verifier.c
1036
struct btf *btf, u32 btf_id, int nr_slots)
kernel/bpf/verifier.c
10526
type = btf_type_by_id(reg->btf, reg->btf_id);
kernel/bpf/verifier.c
1056
if (st->iter.btf != btf || st->iter.btf_id != btf_id)
kernel/bpf/verifier.c
10644
regs[BPF_REG_0].btf_id = meta.ret_btf_id;
kernel/bpf/verifier.c
10657
ret_btf_id = meta.kptr_field->kptr.btf_id;
kernel/bpf/verifier.c
10679
regs[BPF_REG_0].btf_id = ret_btf_id;
kernel/bpf/verifier.c
11475
reg_ref_id = reg->btf_id;
kernel/bpf/verifier.c
11709
static bool is_bpf_list_api_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11711
return is_bpf_list_push_kfunc(btf_id) ||
kernel/bpf/verifier.c
11712
btf_id == special_kfunc_list[KF_bpf_list_pop_front] ||
kernel/bpf/verifier.c
11713
btf_id == special_kfunc_list[KF_bpf_list_pop_back] ||
kernel/bpf/verifier.c
11714
btf_id == special_kfunc_list[KF_bpf_list_front] ||
kernel/bpf/verifier.c
11715
btf_id == special_kfunc_list[KF_bpf_list_back];
kernel/bpf/verifier.c
11718
static bool is_bpf_rbtree_api_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11720
return is_bpf_rbtree_add_kfunc(btf_id) ||
kernel/bpf/verifier.c
11721
btf_id == special_kfunc_list[KF_bpf_rbtree_remove] ||
kernel/bpf/verifier.c
11722
btf_id == special_kfunc_list[KF_bpf_rbtree_first] ||
kernel/bpf/verifier.c
11723
btf_id == special_kfunc_list[KF_bpf_rbtree_root] ||
kernel/bpf/verifier.c
11724
btf_id == special_kfunc_list[KF_bpf_rbtree_left] ||
kernel/bpf/verifier.c
11725
btf_id == special_kfunc_list[KF_bpf_rbtree_right];
kernel/bpf/verifier.c
11728
static bool is_bpf_iter_num_api_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11730
return btf_id == special_kfunc_list[KF_bpf_iter_num_new] ||
kernel/bpf/verifier.c
11731
btf_id == special_kfunc_list[KF_bpf_iter_num_next] ||
kernel/bpf/verifier.c
11732
btf_id == special_kfunc_list[KF_bpf_iter_num_destroy];
kernel/bpf/verifier.c
11735
static bool is_bpf_graph_api_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11737
return is_bpf_list_api_kfunc(btf_id) ||
kernel/bpf/verifier.c
11738
is_bpf_rbtree_api_kfunc(btf_id) ||
kernel/bpf/verifier.c
11739
is_bpf_refcount_acquire_kfunc(btf_id);
kernel/bpf/verifier.c
11742
static bool is_bpf_res_spin_lock_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11744
return btf_id == special_kfunc_list[KF_bpf_res_spin_lock] ||
kernel/bpf/verifier.c
11745
btf_id == special_kfunc_list[KF_bpf_res_spin_unlock] ||
kernel/bpf/verifier.c
11746
btf_id == special_kfunc_list[KF_bpf_res_spin_lock_irqsave] ||
kernel/bpf/verifier.c
11747
btf_id == special_kfunc_list[KF_bpf_res_spin_unlock_irqrestore];
kernel/bpf/verifier.c
11750
static bool is_bpf_arena_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11752
return btf_id == special_kfunc_list[KF_bpf_arena_alloc_pages] ||
kernel/bpf/verifier.c
11753
btf_id == special_kfunc_list[KF_bpf_arena_free_pages] ||
kernel/bpf/verifier.c
11754
btf_id == special_kfunc_list[KF_bpf_arena_reserve_pages];
kernel/bpf/verifier.c
11757
static bool is_bpf_stream_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11759
return btf_id == special_kfunc_list[KF_bpf_stream_vprintk] ||
kernel/bpf/verifier.c
11760
btf_id == special_kfunc_list[KF_bpf_stream_print_stack];
kernel/bpf/verifier.c
11763
static bool kfunc_spin_allowed(u32 btf_id)
kernel/bpf/verifier.c
11765
return is_bpf_graph_api_kfunc(btf_id) || is_bpf_iter_num_api_kfunc(btf_id) ||
kernel/bpf/verifier.c
11766
is_bpf_res_spin_lock_kfunc(btf_id) || is_bpf_arena_kfunc(btf_id) ||
kernel/bpf/verifier.c
11767
is_bpf_stream_kfunc(btf_id);
kernel/bpf/verifier.c
11770
static bool is_sync_callback_calling_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11772
return is_bpf_rbtree_add_kfunc(btf_id);
kernel/bpf/verifier.c
11775
static bool is_async_callback_calling_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11777
return is_bpf_wq_set_callback_kfunc(btf_id) ||
kernel/bpf/verifier.c
11778
is_task_work_add_kfunc(btf_id);
kernel/bpf/verifier.c
11787
static bool is_bpf_wq_set_callback_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11789
return btf_id == special_kfunc_list[KF_bpf_wq_set_callback];
kernel/bpf/verifier.c
11792
static bool is_callback_calling_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11794
return is_sync_callback_calling_kfunc(btf_id) ||
kernel/bpf/verifier.c
11795
is_async_callback_calling_kfunc(btf_id);
kernel/bpf/verifier.c
11798
static bool is_rbtree_lock_required_kfunc(u32 btf_id)
kernel/bpf/verifier.c
11800
return is_bpf_rbtree_api_kfunc(btf_id);
kernel/bpf/verifier.c
11962
t = btf_type_by_id(reg->btf, reg->btf_id);
kernel/bpf/verifier.c
11963
if (!btf_struct_ids_match(&env->log, reg->btf, reg->btf_id, 0, field->graph_root.btf,
kernel/bpf/verifier.c
11975
meta->arg_btf_id = reg->btf_id;
kernel/bpf/verifier.c
12268
meta->arg_btf_id = reg->btf_id;
kernel/bpf/verifier.c
12496
meta->arg_btf_id = reg->btf_id;
kernel/bpf/verifier.c
12879
regs[BPF_REG_0].btf_id = ret_btf_id;
kernel/bpf/verifier.c
12889
regs[BPF_REG_0].btf_id = meta->arg_btf_id;
kernel/bpf/verifier.c
12906
regs[BPF_REG_0].btf_id = meta->ret_btf_id;
kernel/bpf/verifier.c
12917
regs[BPF_REG_0].btf_id = meta->arg_constant.value;
kernel/bpf/verifier.c
13294
regs[BPF_REG_0].btf_id = ptr_type_id;
kernel/bpf/verifier.c
16564
dst_reg->btf_id = aux->btf_var.btf_id;
kernel/bpf/verifier.c
16888
reg_type = reg->btf ? btf_type_by_id(reg->btf, reg->btf_id) : NULL;
kernel/bpf/verifier.c
17980
aux->btf_var.btf_id = type;
kernel/bpf/verifier.c
17999
aux->btf_var.btf_id = type;
kernel/bpf/verifier.c
1869
regs[regno].btf_id = ds_head->value_btf_id;
kernel/bpf/verifier.c
18769
reg->btf_id = arg->btf_id;
kernel/bpf/verifier.c
18935
u32 btf_id, member_idx, member_off;
kernel/bpf/verifier.c
18959
btf_id = prog->aux->attach_btf_id;
kernel/bpf/verifier.c
18960
st_ops_desc = bpf_struct_ops_find(btf, btf_id);
kernel/bpf/verifier.c
18963
btf_id);
kernel/bpf/verifier.c
19056
static int check_non_sleepable_error_inject(u32 btf_id)
kernel/bpf/verifier.c
19058
return btf_id_set_contains(&btf_non_sleepable_error_inject, btf_id);
kernel/bpf/verifier.c
19061
static int check_attach_sleepable(u32 btf_id, unsigned long addr, const char *func_name)
kernel/bpf/verifier.c
19066
if (!check_non_sleepable_error_inject(btf_id) &&
kernel/bpf/verifier.c
19111
static int check_attach_sleepable(u32 btf_id, unsigned long addr, const char *func_name)
kernel/bpf/verifier.c
19133
u32 btf_id,
kernel/bpf/verifier.c
19149
if (!btf_id) {
kernel/bpf/verifier.c
19159
t = btf_type_by_id(btf, btf_id);
kernel/bpf/verifier.c
19161
bpf_log(log, "attach_btf_id %u is invalid\n", btf_id);
kernel/bpf/verifier.c
19166
bpf_log(log, "attach_btf_id %u doesn't have a name\n", btf_id);
kernel/bpf/verifier.c
19181
if (aux->func_info[i].type_id == btf_id) {
kernel/bpf/verifier.c
19286
btf_id);
kernel/bpf/verifier.c
19291
btf_id, tname);
kernel/bpf/verifier.c
19332
btf_id);
kernel/bpf/verifier.c
19359
btf_id);
kernel/bpf/verifier.c
19409
if (!check_attach_sleepable(btf_id, addr, tname))
kernel/bpf/verifier.c
19415
u32 *flags = btf_kfunc_is_modify_return(btf, btf_id,
kernel/bpf/verifier.c
19426
if (bpf_lsm_is_sleepable_hook(btf_id))
kernel/bpf/verifier.c
19444
if (btf_kfunc_is_modify_return(btf, btf_id, prog) ||
kernel/bpf/verifier.c
19533
u32 btf_id = prog->aux->attach_btf_id;
kernel/bpf/verifier.c
19559
ret = bpf_check_attach_target(&env->log, prog, tgt_prog, btf_id, &tgt_info);
kernel/bpf/verifier.c
19594
btf_id_set_contains(&btf_id_deny, btf_id)) {
kernel/bpf/verifier.c
19601
btf_id_set_contains(&noreturn_deny, btf_id)) {
kernel/bpf/verifier.c
19607
key = bpf_trampoline_compute_key(tgt_prog, prog->aux->attach_btf, btf_id);
kernel/bpf/verifier.c
246
u32 btf_id;
kernel/bpf/verifier.c
2521
struct btf *btf, u32 btf_id,
kernel/bpf/verifier.c
2532
regs[regno].btf_id = btf_id;
kernel/bpf/verifier.c
333
meta = btf_find_struct_meta(reg->btf, reg->btf_id);
kernel/bpf/verifier.c
351
u32 btf_id;
kernel/bpf/verifier.c
353
btf_id = env->prog->aux->func_info[subprog].type_id;
kernel/bpf/verifier.c
355
func = btf_type_by_id(btf, btf_id);
kernel/bpf/verifier.c
356
if (verifier_bug_if(!func, env, "btf_id %u not found", btf_id))
kernel/bpf/verifier.c
442
static bool is_sync_callback_calling_kfunc(u32 btf_id);
kernel/bpf/verifier.c
443
static bool is_async_callback_calling_kfunc(u32 btf_id);
kernel/bpf/verifier.c
444
static bool is_callback_calling_kfunc(u32 btf_id);
kernel/bpf/verifier.c
447
static bool is_bpf_wq_set_callback_kfunc(u32 btf_id);
kernel/bpf/verifier.c
4548
const char *targ_name = btf_type_name(kptr_field->kptr.btf, kptr_field->kptr.btf_id);
kernel/bpf/verifier.c
4571
reg_name = btf_type_name(reg->btf, reg->btf_id);
kernel/bpf/verifier.c
4606
if (!btf_struct_ids_match(&env->log, reg->btf, reg->btf_id, reg->var_off.value,
kernel/bpf/verifier.c
4607
kptr_field->kptr.btf, kptr_field->kptr.btf_id,
kernel/bpf/verifier.c
4655
static bool rcu_protected_object(const struct btf *btf, u32 btf_id)
kernel/bpf/verifier.c
4659
return btf_id_set_contains(&rcu_protected_types, btf_id);
kernel/bpf/verifier.c
4670
kptr_field->kptr.btf_id);
kernel/bpf/verifier.c
4680
(field->type == BPF_KPTR_REF && rcu_protected_object(kptr->btf, kptr->btf_id));
kernel/bpf/verifier.c
4712
t = btf_type_by_id(field->kptr.btf, field->kptr.btf_id);
kernel/bpf/verifier.c
4764
kptr_field->kptr.btf, kptr_field->kptr.btf_id,
kernel/bpf/verifier.c
5934
const char *field_name, u32 btf_id)
kernel/bpf/verifier.c
5941
return btf_nested_type_is_trusted(&env->log, reg, field_name, btf_id, "__safe_rcu");
kernel/bpf/verifier.c
5946
const char *field_name, u32 btf_id)
kernel/bpf/verifier.c
5952
return btf_nested_type_is_trusted(&env->log, reg, field_name, btf_id, "__safe_rcu_or_null");
kernel/bpf/verifier.c
5957
const char *field_name, u32 btf_id)
kernel/bpf/verifier.c
5964
return btf_nested_type_is_trusted(&env->log, reg, field_name, btf_id, "__safe_trusted");
kernel/bpf/verifier.c
5969
const char *field_name, u32 btf_id)
kernel/bpf/verifier.c
5975
return btf_nested_type_is_trusted(&env->log, reg, field_name, btf_id,
kernel/bpf/verifier.c
5986
const struct btf_type *t = btf_type_by_id(reg->btf, reg->btf_id);
kernel/bpf/verifier.c
5990
u32 btf_id = 0;
kernel/bpf/verifier.c
6061
ret = btf_struct_access(&env->log, reg, off, size, atype, &btf_id, &flag, &field_name);
kernel/bpf/verifier.c
6089
if (type_is_trusted(env, reg, field_name, btf_id)) {
kernel/bpf/verifier.c
6091
} else if (type_is_trusted_or_null(env, reg, field_name, btf_id)) {
kernel/bpf/verifier.c
6094
if (type_is_rcu(env, reg, field_name, btf_id)) {
kernel/bpf/verifier.c
6098
type_is_rcu_or_null(env, reg, field_name, btf_id)) {
kernel/bpf/verifier.c
6103
if (type_is_rcu_or_null(env, reg, field_name, btf_id) &&
kernel/bpf/verifier.c
6128
ret = mark_btf_ld_reg(env, regs, value_regno, ret, reg->btf, btf_id, flag);
kernel/bpf/verifier.c
6148
u32 btf_id;
kernel/bpf/verifier.c
6189
ret = btf_struct_access(&env->log, &map_reg, off, size, atype, &btf_id, &flag, NULL);
kernel/bpf/verifier.c
6194
ret = mark_btf_ld_reg(env, regs, value_regno, ret, btf_vmlinux, btf_id, flag);
kernel/bpf/verifier.c
6477
regs[value_regno].btf_id = info.btf_id;
kernel/bpf/verifier.c
7576
int spi, err, i, nr_slots, btf_id;
kernel/bpf/verifier.c
7589
btf_id = btf_check_iter_arg(meta->btf, meta->func_proto, regno - 1);
kernel/bpf/verifier.c
7590
if (btf_id < 0) {
kernel/bpf/verifier.c
7594
t = btf_type_by_id(meta->btf, btf_id);
kernel/bpf/verifier.c
7601
iter_type_str(meta->btf, btf_id), regno - 1);
kernel/bpf/verifier.c
7612
err = mark_stack_slots_iter(env, meta, reg, insn_idx, meta->btf, btf_id, nr_slots);
kernel/bpf/verifier.c
7619
err = is_iter_reg_valid_init(env, reg, meta->btf, btf_id, nr_slots);
kernel/bpf/verifier.c
7625
iter_type_str(meta->btf, btf_id), regno - 1);
kernel/bpf/verifier.c
7933
u32 *btf_id;
kernel/bpf/verifier.c
7955
.btf_id = &btf_sock_ids[BTF_SOCK_TYPE_SOCK_COMMON],
kernel/bpf/verifier.c
8138
if (!compatible->btf_id) {
kernel/bpf/verifier.c
8142
arg_btf_id = compatible->btf_id;
kernel/bpf/verifier.c
8160
if (!btf_struct_ids_match(&env->log, reg->btf, reg->btf_id,
kernel/bpf/verifier.c
8164
regno, btf_type_name(reg->btf, reg->btf_id),
kernel/bpf/verifier.c
8654
if (!reg->btf_id) {
kernel/bpf/verifier.c
8659
meta->ret_btf_id = reg->btf_id;
kernel/bpf/verifier.c
9385
err = check_reg_type(env, regno, arg->arg_type, &arg->btf_id, &meta);
kernel/bpf/verifier.c
940
struct btf *btf, u32 btf_id, int nr_slots)
kernel/bpf/verifier.c
9410
u32 btf_id;
kernel/bpf/verifier.c
9416
btf_id = prog->aux->func_info[subprog].type_id;
kernel/bpf/verifier.c
9417
if (!btf_id)
kernel/bpf/verifier.c
967
st->iter.btf_id = btf_id;
kernel/bpf/verifier.c
9715
callee->regs[BPF_REG_2].btf_id = btf_tracing_ids[BTF_TRACING_TYPE_VMA];
kernel/bpf/verifier.c
9814
static bool is_rbtree_lock_required_kfunc(u32 btf_id);
kernel/kallsyms.c
876
ksym_iter_reg_info.ctx_arg_info[0].btf_id = *btf_ksym_iter_id;
kernel/sched/ext.c
7205
t = btf_type_by_id(reg->btf, reg->btf_id);
kernel/trace/bpf_trace.c
1000
if (*btf_id <= 0 || !t)
kernel/trace/bpf_trace.c
1010
s32 btf_id;
kernel/trace/bpf_trace.c
1013
ret = bpf_btf_printf_prepare(ptr, btf_ptr_size, flags, &btf, &btf_id);
kernel/trace/bpf_trace.c
1017
return btf_type_snprintf_show(btf, btf_id, ptr->ptr, str, str_size,
kernel/trace/bpf_trace.c
515
s32 btf_id;
kernel/trace/bpf_trace.c
518
ret = bpf_btf_printf_prepare(ptr, btf_ptr_size, flags, &btf, &btf_id);
kernel/trace/bpf_trace.c
522
return btf_type_seq_show_flags(btf, btf_id, ptr->ptr, m, flags);
kernel/trace/bpf_trace.c
88
s32 *btf_id);
kernel/trace/bpf_trace.c
978
s32 *btf_id)
kernel/trace/bpf_trace.c
994
*btf_id = ptr->type_id;
kernel/trace/bpf_trace.c
998
if (*btf_id > 0)
kernel/trace/bpf_trace.c
999
t = btf_type_by_id(*btf, *btf_id);
net/bpf/bpf_dummy_struct_ops.c
249
t = btf_type_by_id(reg->btf, reg->btf_id);
net/bpf/test_run.c
1859
.btf_id = bpf_prog_test_dtor_kfunc_ids[0],
net/bpf/test_run.c
1863
.btf_id = bpf_prog_test_dtor_kfunc_ids[2],
net/core/bpf_sk_storage.c
916
bpf_sk_storage_map_reg_info.ctx_arg_info[0].btf_id =
net/core/sock_map.c
1955
sock_map_iter_reg.ctx_arg_info[1].btf_id =
net/core/xdp.c
988
bool bpf_dev_bound_kfunc_id(u32 btf_id)
net/core/xdp.c
990
return btf_id_set8_contains(&xdp_metadata_kfunc_ids, btf_id);
net/ipv4/bpf_tcp_ca.c
54
info->btf_id == sock_id)
net/ipv4/bpf_tcp_ca.c
56
info->btf_id = tcp_sock_id;
net/ipv4/bpf_tcp_ca.c
68
t = btf_type_by_id(reg->btf, reg->btf_id);
net/ipv4/tcp_ipv4.c
3632
tcp_reg_info.ctx_arg_info[0].btf_id = btf_sock_ids[BTF_SOCK_TYPE_SOCK_COMMON];
net/ipv4/udp.c
3861
udp_reg_info.ctx_arg_info[0].btf_id = btf_sock_ids[BTF_SOCK_TYPE_UDP];
net/ipv6/route.c
6859
ipv6_route_reg_info.ctx_arg_info[0].btf_id = *btf_fib6_info_id;
net/netfilter/nf_bpf_link.c
287
info->btf_id = type_id;
net/netfilter/nf_conntrack_bpf.c
244
t = btf_type_by_id(reg->btf, reg->btf_id);
net/netlink/af_netlink.c
2909
netlink_reg_info.ctx_arg_info[0].btf_id = *btf_netlink_sock_id;
net/sched/bpf_qdisc.c
106
t = btf_type_by_id(reg->btf, reg->btf_id);
net/sched/bpf_qdisc.c
46
info->btf_id = bpf_sk_buff_ptr_ids[0];
net/sched/bpf_qdisc.c
465
.btf_id = bpf_sk_buff_ids[0],
net/unix/af_unix.c
3916
unix_reg_info.ctx_arg_info[0].btf_id = btf_sock_ids[BTF_SOCK_TYPE_UNIX];
tools/bpf/bpftool/btf.c
1139
if (!base_btf && btf_is_kernel_module(btf_id)) {
tools/bpf/bpftool/btf.c
1145
btf = btf__load_from_kernel_by_id_split(btf_id, base_btf);
tools/bpf/bpftool/btf.c
1148
p_err("get btf by id (%u): %s", btf_id, strerror(errno));
tools/bpf/bpftool/btf.c
1219
__u32 btf_id, id = 0;
tools/bpf/bpftool/btf.c
1284
btf_id = ((struct bpf_prog_info *)info)->btf_id;
tools/bpf/bpftool/btf.c
1287
btf_id = ((struct bpf_map_info *)info)->btf_id;
tools/bpf/bpftool/btf.c
1294
if (!btf_id)
tools/bpf/bpftool/btf.c
1297
err = hashmap__append(tab, btf_id, id);
tools/bpf/bpftool/btf.c
1300
btf_id, id, strerror(-err));
tools/bpf/bpftool/btf.c
855
static bool btf_is_kernel_module(__u32 btf_id)
tools/bpf/bpftool/btf.c
863
btf_fd = bpf_btf_get_fd_by_id(btf_id);
tools/bpf/bpftool/btf.c
865
p_err("can't get BTF object by id (%u): %s", btf_id, strerror(errno));
tools/bpf/bpftool/btf.c
875
p_err("can't get BTF (ID %u) object info: %s", btf_id, strerror(errno));
tools/bpf/bpftool/btf.c
928
__u32 btf_id = -1;
tools/bpf/bpftool/btf.c
953
btf_id = info.btf_id;
tools/bpf/bpftool/btf.c
989
btf_id = info.btf_id;
tools/bpf/bpftool/btf.c
993
btf_id = strtoul(*argv, &endptr, 0);
tools/bpf/bpftool/btf_dumper.c
64
if (!info.btf_id || !info.nr_func_info)
tools/bpf/bpftool/btf_dumper.c
77
prog_btf = btf__load_from_kernel_by_id(info.btf_id);
tools/bpf/bpftool/common.c
427
if (!prog_info->btf_id || prog_info->nr_func_info == 0)
tools/bpf/bpftool/common.c
439
prog_btf = btf__load_from_kernel_by_id(info.btf_id);
tools/bpf/bpftool/map.c
521
if (info->btf_id)
tools/bpf/bpftool/map.c
522
jsonw_int_field(json_wtr, "btf_id", info->btf_id);
tools/bpf/bpftool/map.c
614
if (info->btf_id || frozen)
tools/bpf/bpftool/map.c
617
if (info->btf_id)
tools/bpf/bpftool/map.c
618
printf("btf_id %u", info->btf_id);
tools/bpf/bpftool/map.c
621
printf("%sfrozen", info->btf_id ? " " : "");
tools/bpf/bpftool/map.c
784
if (!info.btf_id)
tools/bpf/bpftool/map.c
807
*btf = btf__load_from_kernel_by_id(info->btf_id);
tools/bpf/bpftool/prog.c
2307
if (info.btf_id == 0) {
tools/bpf/bpftool/prog.c
2329
btf = btf__load_from_kernel_by_id(info.btf_id);
tools/bpf/bpftool/prog.c
2338
info.btf_id, func_info.type_id);
tools/bpf/bpftool/prog.c
325
btf = btf__load_from_kernel_by_id(map_info.btf_id);
tools/bpf/bpftool/prog.c
483
if (info->btf_id)
tools/bpf/bpftool/prog.c
484
jsonw_int_field(json_wtr, "btf_id", info->btf_id);
tools/bpf/bpftool/prog.c
572
if (info->btf_id)
tools/bpf/bpftool/prog.c
573
printf("\n\tbtf_id %u", info->btf_id);
tools/bpf/bpftool/prog.c
732
if (info->btf_id) {
tools/bpf/bpftool/prog.c
733
btf = btf__load_from_kernel_by_id(info->btf_id);
tools/bpf/resolve_btfids/main.c
1030
kfunc.btf_id = func_id;
tools/bpf/resolve_btfids/main.c
1123
t = (struct btf_type *)btf__type_by_id(btf, kfunc->btf_id);
tools/bpf/resolve_btfids/main.c
1125
pr_err("ERROR: resolve_btfids: btf id %d is not a function\n", kfunc->btf_id);
tools/bpf/resolve_btfids/main.c
1159
if (t->type != kfunc->btf_id)
tools/bpf/resolve_btfids/main.c
1206
t = (struct btf_type *)btf__type_by_id(btf, kfunc->btf_id);
tools/bpf/resolve_btfids/main.c
160
u32 btf_id;
tools/bpf/resolve_btfids/main.c
209
static struct btf_id *btf_id__find(struct rb_root *root, const char *name)
tools/bpf/resolve_btfids/main.c
212
struct btf_id *id;
tools/bpf/resolve_btfids/main.c
216
id = rb_entry(p, struct btf_id, rb_node);
tools/bpf/resolve_btfids/main.c
228
static struct btf_id *__btf_id__add(struct rb_root *root,
tools/bpf/resolve_btfids/main.c
235
struct btf_id *id;
tools/bpf/resolve_btfids/main.c
240
id = rb_entry(parent, struct btf_id, rb_node);
tools/bpf/resolve_btfids/main.c
265
static inline struct btf_id *btf_id__add(struct rb_root *root,
tools/bpf/resolve_btfids/main.c
272
static inline struct btf_id *btf_id__add_unique(struct rb_root *root,
tools/bpf/resolve_btfids/main.c
312
static struct btf_id *add_set(struct object *obj, char *name, enum btf_id_kind kind)
tools/bpf/resolve_btfids/main.c
344
static struct btf_id *add_symbol(struct rb_root *root, char *name, size_t size)
tools/bpf/resolve_btfids/main.c
359
struct btf_id *id;
tools/bpf/resolve_btfids/main.c
363
id = rb_entry(next, struct btf_id, rb_node);
tools/bpf/resolve_btfids/main.c
505
struct btf_id *id;
tools/bpf/resolve_btfids/main.c
636
struct btf_id *id;
tools/bpf/resolve_btfids/main.c
687
static int id_patch(struct object *obj, struct btf_id *id)
tools/bpf/resolve_btfids/main.c
722
struct btf_id *id;
tools/bpf/resolve_btfids/main.c
726
id = rb_entry(next, struct btf_id, rb_node);
tools/bpf/resolve_btfids/main.c
754
struct btf_id *id;
tools/bpf/resolve_btfids/main.c
756
id = rb_entry(next, struct btf_id, rb_node);
tools/bpf/resolve_btfids/main.c
954
static u32 find_kfunc_flags(struct object *obj, struct btf_id *kfunc_id)
tools/bpf/resolve_btfids/main.c
958
struct btf_id *set_id;
tools/bpf/resolve_btfids/main.c
964
set_id = rb_entry(next, struct btf_id, rb_node);
tools/bpf/resolve_btfids/main.c
999
struct btf_id *id;
tools/include/uapi/linux/bpf.h
1710
__u32 btf_id;
tools/include/uapi/linux/bpf.h
6683
__u32 btf_id;
tools/include/uapi/linux/bpf.h
6715
__u32 btf_id;
tools/lib/bpf/bpf.c
1155
attr.btf_id = id;
tools/lib/bpf/bpf_core_read.h
329
extern void *bpf_rdonly_cast(const void *obj, __u32 btf_id) __ksym __weak;
tools/lib/bpf/libbpf.c
10552
if (!info.btf_id) {
tools/lib/bpf/libbpf.c
10556
btf = btf_load_from_kernel(info.btf_id, NULL, token_fd);
tools/lib/bpf/libbpf.c
10559
pr_warn("Failed to get BTF %d of the program: %s\n", info.btf_id, errstr(err));
tools/lib/bpf/libbpf.c
13487
int btf_id;
tools/lib/bpf/libbpf.c
13504
btf_id = libbpf_find_prog_btf_id(attach_func_name, target_fd, prog->obj->token_fd);
tools/lib/bpf/libbpf.c
13505
if (btf_id < 0)
tools/lib/bpf/libbpf.c
13506
return libbpf_err_ptr(btf_id);
tools/lib/bpf/libbpf.c
13508
target_opts.target_btf_id = btf_id;
tools/lib/bpf/libbpf.c
14306
int btf_obj_fd = 0, btf_id = 0, err;
tools/lib/bpf/libbpf.c
14323
btf_id = libbpf_find_prog_btf_id(attach_func_name,
tools/lib/bpf/libbpf.c
14325
if (btf_id < 0)
tools/lib/bpf/libbpf.c
14326
return libbpf_err(btf_id);
tools/lib/bpf/libbpf.c
14337
&btf_obj_fd, &btf_id);
tools/lib/bpf/libbpf.c
14342
prog->attach_btf_id = btf_id;
tools/lib/bpf/libbpf.c
4340
ext->btf_id = find_extern_btf_id(obj->btf, ext_name);
tools/lib/bpf/libbpf.c
4341
if (ext->btf_id <= 0) {
tools/lib/bpf/libbpf.c
4343
ext_name, ext->btf_id);
tools/lib/bpf/libbpf.c
4344
return ext->btf_id;
tools/lib/bpf/libbpf.c
4346
t = btf__type_by_id(obj->btf, ext->btf_id);
tools/lib/bpf/libbpf.c
4361
ext->sec_btf_id = find_extern_sec_btf_id(obj->btf, ext->btf_id);
tools/lib/bpf/libbpf.c
4364
ext_name, ext->btf_id, ext->sec_btf_id);
tools/lib/bpf/libbpf.c
617
int btf_id;
tools/lib/bpf/libbpf.c
8237
kind = btf_is_var(btf__type_by_id(obj->btf, ext->btf_id)) ?
tools/lib/bpf/libbpf.c
8568
t = btf__type_by_id(obj->btf, ext->btf_id);
tools/lib/bpf/libbpf.c
8766
t = btf__type_by_id(obj->btf, ext->btf_id);
tools/lib/bpf/linker.c
1766
struct src_obj *obj, Elf64_Sym *sym, int btf_id)
tools/lib/bpf/linker.c
1773
t = btf__type_by_id(obj->btf, btf_id);
tools/lib/bpf/linker.c
1775
pr_warn("global '%s': invalid map definition type [%d]\n", sym_name, btf_id);
tools/lib/bpf/linker.c
1787
t = btf__type_by_id(linker->btf, glob_sym->btf_id);
tools/lib/bpf/linker.c
1806
struct src_obj *obj, Elf64_Sym *sym, size_t sym_idx, int btf_id)
tools/lib/bpf/linker.c
1813
if (!glob_sym->btf_id || !btf_id) {
tools/lib/bpf/linker.c
1818
src_t = btf__type_by_id(obj->btf, btf_id);
tools/lib/bpf/linker.c
1827
return glob_map_defs_match(sym_name, linker, glob_sym, obj, sym, btf_id);
tools/lib/bpf/linker.c
1830
linker->btf, glob_sym->btf_id, obj->btf, btf_id))
tools/lib/bpf/linker.c
1845
int i, j, n, m, btf_id = 0;
tools/lib/bpf/linker.c
1868
btf_id = i;
tools/lib/bpf/linker.c
1887
if (btf_id && btf_id != vi->type) {
tools/lib/bpf/linker.c
1889
sym_name, btf_id, vi->type);
tools/lib/bpf/linker.c
1901
if (btf_id) {
tools/lib/bpf/linker.c
1903
*out_btf_id = btf_id;
tools/lib/bpf/linker.c
2002
int btf_sec_id = 0, btf_id = 0;
tools/lib/bpf/linker.c
2037
err = find_glob_sym_btf(obj, sym, sym_name, &btf_sec_id, &btf_id);
tools/lib/bpf/linker.c
2083
if (!glob_syms_match(sym_name, linker, glob_sym, obj, sym, src_sym_idx, btf_id))
tools/lib/bpf/linker.c
2139
if (complete_extern_btf_info(linker->btf, glob_sym->btf_id,
tools/lib/bpf/linker.c
2140
obj->btf, btf_id))
tools/lib/bpf/linker.c
2188
glob_sym->btf_id = 0;
tools/lib/bpf/linker.c
2460
if (glob_sym->btf_id) {
tools/lib/bpf/linker.c
2462
obj->btf_type_map[i] = glob_sym->btf_id;
tools/lib/bpf/linker.c
2477
glob_sym->btf_id = id;
tools/lib/bpf/linker.c
2519
glob_t = btf_type_by_id(linker->btf, glob_sym->btf_id);
tools/lib/bpf/linker.c
91
int btf_id;
tools/perf/util/bpf-event.c
105
u32 btf_id,
tools/perf/util/bpf-event.c
118
node->id = btf_id;
tools/perf/util/bpf-event.c
213
btf = btf__load_from_kernel_by_id(map_info.btf_id);
tools/perf/util/bpf-event.c
591
if (info->btf_id && info->nr_func_info && info->func_info_rec_size) {
tools/perf/util/bpf-event.c
598
btf = btf__load_from_kernel_by_id(info->btf_id);
tools/perf/util/bpf-event.c
600
pr_debug("%s: failed to get BTF of id %u, aborting\n", __func__, info->btf_id);
tools/perf/util/bpf-event.c
604
perf_env__fetch_btf(env, info->btf_id, btf);
tools/perf/util/bpf-event.c
840
u32 btf_id;
tools/perf/util/bpf-event.c
863
btf_id = info_linear->info.btf_id;
tools/perf/util/bpf-event.c
871
__func__, btf_id);
tools/perf/util/bpf-event.c
882
if (btf_id == 0)
tools/perf/util/bpf-event.c
885
btf = btf__load_from_kernel_by_id(btf_id);
tools/perf/util/bpf-event.c
888
pr_debug("%s: failed to get BTF of id %u %d\n", __func__, btf_id, err);
tools/perf/util/bpf-event.c
890
perf_env__fetch_btf(env, btf_id, btf);
tools/perf/util/bpf-event.c
961
if (info->btf_id) {
tools/perf/util/bpf-event.c
964
node = __perf_env__find_btf(env, info->btf_id);
tools/perf/util/bpf_counter.c
135
if (info_linear->info.btf_id == 0) {
tools/perf/util/bpf_counter.c
140
btf = btf__load_from_kernel_by_id(info_linear->info.btf_id);
tools/perf/util/bpf_counter.c
150
info_linear->info.btf_id, func_info[0].type_id);
tools/perf/util/env.c
119
__u32 btf_id = btf_node->id;
tools/perf/util/env.c
128
if (btf_id < node->id) {
tools/perf/util/env.c
130
} else if (btf_id > node->id) {
tools/perf/util/env.c
133
pr_debug("duplicated btf %u\n", btf_id);
tools/perf/util/env.c
144
struct btf_node *perf_env__find_btf(struct perf_env *env, __u32 btf_id)
tools/perf/util/env.c
149
res = __perf_env__find_btf(env, btf_id);
tools/perf/util/env.c
154
struct btf_node *__perf_env__find_btf(struct perf_env *env, __u32 btf_id)
tools/perf/util/env.c
163
if (btf_id < node->id)
tools/perf/util/env.c
165
else if (btf_id > node->id)
tools/perf/util/env.h
209
struct btf_node *perf_env__find_btf(struct perf_env *env, __u32 btf_id);
tools/perf/util/env.h
210
struct btf_node *__perf_env__find_btf(struct perf_env *env, __u32 btf_id);
tools/perf/util/libbfd.c
561
if (info_linear->info.btf_id) {
tools/perf/util/libbfd.c
565
info_linear->info.btf_id);
tools/testing/selftests/bpf/bpf_kfuncs.h
69
extern void *bpf_rdonly_cast(const void *obj, __u32 btf_id) __ksym __weak;
tools/testing/selftests/bpf/prog_tests/btf.c
4685
if (CHECK(err || map_info.btf_id != info[0].id ||
tools/testing/selftests/bpf/prog_tests/btf.c
4688
err, errno, info[0].id, map_info.btf_id, map_info.btf_key_type_id,
tools/testing/selftests/bpf/prog_tests/btf.c
4700
btf_fd[0] = bpf_btf_get_fd_by_id(map_info.btf_id);
tools/testing/selftests/bpf/prog_tests/btf.c
4951
btf = btf__load_from_kernel_by_id(info.btf_id);
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
252
static int find_field_offset_aux(struct btf *btf, int btf_id, char *field_name, int off)
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
254
const struct btf_type *type = btf__type_by_id(btf, btf_id);
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
260
PRINT_FAIL("Can't find btf_type for id %d\n", btf_id);
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
265
PRINT_FAIL("BTF id %d is not struct or union\n", btf_id);
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
299
int btf_id, field_offset;
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
315
btf_id = btf__find_by_name(btf, type_str);
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
316
if (btf_id < 0) {
tools/testing/selftests/bpf/prog_tests/ctx_rewrite.c
321
field_offset = find_field_offset_aux(btf, btf_id, field_str, 0);
tools/testing/selftests/bpf/prog_tests/fd_array.c
302
__u32 btf_id;
tools/testing/selftests/bpf/prog_tests/fd_array.c
314
err = get_btf_id_by_fd(extra_fds[0], &btf_id);
tools/testing/selftests/bpf/prog_tests/fd_array.c
323
if (!ASSERT_EQ(btf_exists(btf_id), true, "btf should exist"))
tools/testing/selftests/bpf/prog_tests/fd_array.c
333
if (!btf_exists(btf_id))
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
115
__s32 btf_id;
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
120
btf_id = btf__find_by_name_kind(btf, tgt_name + 1, BTF_KIND_FUNC);
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
146
ASSERT_EQ(link_info.tracing.target_btf_id, btf_id, "link_tgt_btf_id");
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
466
if (!info.btf_id)
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
469
btf = btf__load_from_kernel_by_id(info.btf_id);
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
506
int btf_id;
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
520
btf_id = find_prog_btf_id("bind_v4_prog", bpf_program__fd(skel->progs.bind_v4_prog));
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
521
if (!ASSERT_GE(btf_id, 0, "find_prog_btf_id"))
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
524
fentry_fd = load_fentry(bpf_program__fd(skel->progs.bind_v4_prog), btf_id);
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
535
ASSERT_EQ(info.btf_id, 0, "info.btf_id");
tools/testing/selftests/bpf/prog_tests/fexit_bpf2bpf.c
536
ASSERT_EQ(info.attach_btf_id, btf_id, "info.attach_btf_id");
tools/testing/selftests/bpf/prog_tests/module_fentry_shadow.c
100
load_opts.attach_btf_id = btf_id[i];
tools/testing/selftests/bpf/prog_tests/module_fentry_shadow.c
63
__s32 btf_id[2] = {};
tools/testing/selftests/bpf/prog_tests/module_fentry_shadow.c
91
btf_id[0] = btf__find_by_name_kind(vmlinux_btf, symbol_name, BTF_KIND_FUNC);
tools/testing/selftests/bpf/prog_tests/module_fentry_shadow.c
92
if (!ASSERT_GT(btf_id[0], 0, "btf_find_by_name"))
tools/testing/selftests/bpf/prog_tests/module_fentry_shadow.c
95
btf_id[1] = btf__find_by_name_kind(mod_btf, symbol_name, BTF_KIND_FUNC);
tools/testing/selftests/bpf/prog_tests/module_fentry_shadow.c
96
if (!ASSERT_GT(btf_id[1], 0, "btf_find_by_name"))
tools/testing/selftests/bpf/prog_tests/test_global_funcs.c
88
btf = btf__load_from_kernel_by_id(info.btf_id);
tools/testing/selftests/bpf/prog_tests/tracing_failure.c
60
int btf_id;
tools/testing/selftests/bpf/prog_tests/tracing_failure.c
63
btf_id = libbpf_find_vmlinux_btf_id("__rcu_read_lock", BPF_TRACE_FENTRY);
tools/testing/selftests/bpf/prog_tests/tracing_failure.c
64
if (btf_id <= 0) {
tools/testing/selftests/bpf/progs/verifier_bpf_fastcall.c
873
[btf_id]"r"(bpf_core_type_id_kernel(union bpf_attr))
tools/testing/selftests/bpf/test_kmods/bpf_testmod.c
1926
.btf_id = bpf_testmod_dtor_ids[0],
tools/testing/selftests/bpf/test_verifier.c
1002
prog[fixup_kfunc_btf_id->insn_idx].imm = btf_id;
tools/testing/selftests/bpf/test_verifier.c
973
int btf_id = 0;
tools/testing/selftests/bpf/test_verifier.c
978
btf_id = btf__find_by_name_kind(vmlinux_btf,
tools/testing/selftests/bpf/test_verifier.c
981
btf_id = btf_id < 0 ? 0 : btf_id;
tools/testing/selftests/bpf/test_verifier.c
985
if (!btf_id) {
tools/testing/selftests/bpf/test_verifier.c
988
btf_id = btf__find_by_name_kind(testmod_btf,
tools/testing/selftests/bpf/test_verifier.c
991
btf_id = btf_id < 0 ? 0 : btf_id;
tools/testing/selftests/bpf/test_verifier.c
992
if (btf_id) {