BTF_KIND_STRUCT
BTF_KIND_STRUCT);
return kind == BTF_KIND_STRUCT || kind == BTF_KIND_UNION;
return kind == BTF_KIND_STRUCT || kind == BTF_KIND_UNION;
return BTF_INFO_KIND(t->info) == BTF_KIND_STRUCT;
type_id = btf_find_by_name_kind(btf, name, BTF_KIND_STRUCT);
BTF_KIND_STRUCT);
BTF_KIND_STRUCT);
case BTF_KIND_STRUCT:
prefix = BTF_INFO_KIND(t->info) == BTF_KIND_STRUCT ?
case BTF_KIND_STRUCT:
[BTF_KIND_STRUCT] = "STRUCT",
id = btf_find_by_name_kind(btf, value_type, BTF_KIND_STRUCT);
[BTF_KIND_STRUCT] = &struct_ops,
id = btf_find_by_name_kind(btf, alloc_obj_fields[i], BTF_KIND_STRUCT);
case BTF_KIND_STRUCT:
if (BTF_INFO_KIND(key_type->info) != BTF_KIND_STRUCT ||
return BTF_INFO_KIND(key_type->info) != BTF_KIND_STRUCT ?
id = bpf_find_btf_id(sname, BTF_KIND_STRUCT, &btf);
BTF_KIND_STRUCT);
BTF_KIND_STRUCT);
type_id = btf_find_by_name_kind(btf, "sock", BTF_KIND_STRUCT);
type_id = btf_find_by_name_kind(btf, "tcp_sock", BTF_KIND_STRUCT);
type_id = btf_find_by_name_kind(btf, "tcp_congestion_ops", BTF_KIND_STRUCT);
type_id = btf_find_by_name_kind(btf, name, BTF_KIND_STRUCT);
case BTF_KIND_STRUCT:
[BTF_KIND_STRUCT] = "STRUCT",
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
BTF_KIND_STRUCT);
case BTF_KIND_STRUCT:
return btf_add_composite(btf, BTF_KIND_STRUCT, name, byte_sz);
[BTF_KIND_STRUCT] = { 0, sizeof(struct btf_member), 0 },
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
return btf_kflag(t) ? BTF_KIND_UNION : BTF_KIND_STRUCT;
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
k1 == BTF_KIND_STRUCT ? "STRUCT" : "UNION",
case BTF_KIND_STRUCT:
cand_kind == BTF_KIND_STRUCT ? "STRUCT" : "UNION",
if ((t_kind == BTF_KIND_STRUCT || t_kind == BTF_KIND_UNION) &&
if (kind != BTF_KIND_STRUCT &&
case BTF_KIND_STRUCT:
if (kind != BTF_KIND_STRUCT && kind != BTF_KIND_UNION)
if ((cand_kind == BTF_KIND_STRUCT && fwd_kind != BTF_FWD_STRUCT) ||
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
return btf_kind(t) == BTF_KIND_STRUCT;
return kind == BTF_KIND_STRUCT || kind == BTF_KIND_UNION;
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
kern_vtype_id = find_ksym_btf_id(obj, stname, BTF_KIND_STRUCT, &btf, mod_btf);
kern_type_id = btf__find_by_name_kind(btf, tname, BTF_KIND_STRUCT);
case BTF_KIND_STRUCT: return "struct";
t->info = BTF_INFO_ENC(BTF_KIND_STRUCT, 0, vlen);
t->info = BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 0);
BTF_TYPE_ENC(1, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 4),
BTF_TYPE_ENC(15, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 8),
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
return (targ_k == BTF_KIND_STRUCT && !local_f) ||
case BTF_KIND_STRUCT:
case BTF_KIND_STRUCT:
id = btf__find_by_name_kind(btf, "spinlock", BTF_KIND_STRUCT);
id = btf__find_by_name_kind(btf, "perf_event_attr", BTF_KIND_STRUCT);
ret = btf__find_by_name_kind(con->btf, "zone", BTF_KIND_STRUCT);
ret = btf__find_by_name_kind(con->btf, "bpf_iter__kmem_cache", BTF_KIND_STRUCT);
tid = btf__find_by_name_kind(__COMPAT_vmlinux_btf, type, BTF_KIND_STRUCT);
case BTF_KIND_STRUCT:
[BTF_KIND_STRUCT] = "STRUCT",
BTF_TYPE_ENC(1, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 4),
BTF_TYPE_ENC(15, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 8),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), sizeof(int) * 2 - 1),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 2),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), sizeof(void *)),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 8),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 6), 180),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 8),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 8),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 8),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), sizeof(void *)),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), sizeof(void *)),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), sizeof(void *)),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 3), 68),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 8),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 16),
BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 4), /* [2] */
BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 4), /* [2] */
BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 4), /* [2] */
BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 4), /* [2] */
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 8), /* [2] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 4), /* [2] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 4),/* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 4),/* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 4), /* [2] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 4), /* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 4), /* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 12), /* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 2), 12), /* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 16), /* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 16), /* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 1), 16), /* [3] */
BTF_TYPE_ENC(0, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 1), 16), /* [3] */
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 11), 40),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 11), 40),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 11), 40),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 5), 64),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 4), 48),
BTF_TYPE_ENC(NAME_NTH(2), BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 1), 4), /* [3] */
BTF_TYPE_ENC(NAME_NTH(2), BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 1), 4), /* [5] */
BTF_TYPE_ENC(NAME_NTH(2), BTF_INFO_ENC(BTF_KIND_STRUCT, 1, 1), 4), /* [3] */
case BTF_KIND_STRUCT:
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), sizeof(int) * 2),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), sizeof(int) * 2 - 1),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), sizeof(int) * 3 - 1),
BTF_TYPE_ENC(NAME_TBD, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), sizeof(int) + sizeof(void *) - 1),
ASSERT_EQ(btf_kind(t), BTF_KIND_STRUCT, "struct_kind");
exp->local_struct = find_btf_type(local_btf, "a_struct", BTF_KIND_STRUCT);
exp->targ_struct = find_btf_type(targ_btf, "a_struct", BTF_KIND_STRUCT);
{ "S", BTF_KIND_STRUCT, -1 },
id = btf__find_by_name_kind(btf, tname, BTF_KIND_STRUCT);
id = btf__find_by_name_kind(btf, tname, BTF_KIND_STRUCT);
if (btf__find_by_name_kind(kern_btf, "bpf_subprog_arg_info", BTF_KIND_STRUCT) > 0) {
BTF_TYPE_ENC(name, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, nr_elems), sz)
BTF_TYPE_ENC(1, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 4),
BTF_TYPE_ENC(15, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 2), 8),
BTF_TYPE_ENC(25, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 0), 16),
BTF_TYPE_ENC(35, BTF_INFO_ENC(BTF_KIND_STRUCT, 0, 1), 16),