mirror of
https://github.com/torvalds/linux.git
synced 2025-04-12 16:47:42 +00:00
libbpf: Check the kflag of type tags in btf_dump
If the kflag is set for a BTF type tag, then the tag represents an arbitrary __attribute__. Change btf_dump accordingly. Signed-off-by: Ihor Solodrai <ihor.solodrai@linux.dev> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Reviewed-by: Alan Maguire <alan.maguire@oracle.com> Acked-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/20250130201239.1429648-4-ihor.solodrai@linux.dev
This commit is contained in:
parent
ea70faa1f2
commit
2019c58318
@ -1494,7 +1494,10 @@ static void btf_dump_emit_type_chain(struct btf_dump *d,
|
|||||||
case BTF_KIND_TYPE_TAG:
|
case BTF_KIND_TYPE_TAG:
|
||||||
btf_dump_emit_mods(d, decls);
|
btf_dump_emit_mods(d, decls);
|
||||||
name = btf_name_of(d, t->name_off);
|
name = btf_name_of(d, t->name_off);
|
||||||
btf_dump_printf(d, " __attribute__((btf_type_tag(\"%s\")))", name);
|
if (btf_kflag(t))
|
||||||
|
btf_dump_printf(d, " __attribute__((%s))", name);
|
||||||
|
else
|
||||||
|
btf_dump_printf(d, " __attribute__((btf_type_tag(\"%s\")))", name);
|
||||||
break;
|
break;
|
||||||
case BTF_KIND_ARRAY: {
|
case BTF_KIND_ARRAY: {
|
||||||
const struct btf_array *a = btf_array(t);
|
const struct btf_array *a = btf_array(t);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user