Home
last modified time | relevance | path

Searched refs:btf_decl_tag (Results 1 – 20 of 20) sorted by relevance

/linux-6.15/tools/testing/selftests/bpf/progs/
H A Dbpf_misc.h118 #define __failure __attribute__((btf_decl_tag("comment:test_expect_failure")))
119 #define __success __attribute__((btf_decl_tag("comment:test_expect_success")))
126 #define __log_level(lvl) __attribute__((btf_decl_tag("comment:test_log_level="#lvl)))
127 #define __flag(flag) __attribute__((btf_decl_tag("comment:test_prog_flags="#flag)))
128 #define __retval(val) __attribute__((btf_decl_tag("comment:test_retval="#val)))
130 #define __auxiliary __attribute__((btf_decl_tag("comment:test_auxiliary")))
131 #define __auxiliary_unpriv __attribute__((btf_decl_tag("comment:test_auxiliary_unpriv")))
132 #define __btf_path(path) __attribute__((btf_decl_tag("comment:test_btf_path=" path)))
133 #define __arch(arch) __attribute__((btf_decl_tag("comment:test_arch=" arch)))
138 #define __load_if_JITed() __attribute__((btf_decl_tag("comment:load_mode=jited")))
[all …]
H A Dtest_btf_decl_tag.c7 #if __has_attribute(btf_decl_tag)
8 #define __tag1 __attribute__((btf_decl_tag("tag1")))
9 #define __tag2 __attribute__((btf_decl_tag("tag2")))
/linux-6.15/tools/lib/bpf/
H A Dbpf_helpers.h206 #define __arg_ctx __attribute__((btf_decl_tag("arg:ctx")))
207 #define __arg_nonnull __attribute((btf_decl_tag("arg:nonnull")))
208 #define __arg_nullable __attribute((btf_decl_tag("arg:nullable")))
209 #define __arg_trusted __attribute((btf_decl_tag("arg:trusted")))
210 #define __arg_arena __attribute((btf_decl_tag("arg:arena")))
H A Dbtf.h607 struct btf_decl_tag;
608 static inline struct btf_decl_tag *btf_decl_tag(const struct btf_type *t) in btf_decl_tag() function
610 return (struct btf_decl_tag *)(t + 1); in btf_decl_tag()
H A Dbtf.c326 return base_size + sizeof(struct btf_decl_tag); in btf_type_size()
409 btf_decl_tag(t)->component_idx = bswap_32(btf_decl_tag(t)->component_idx); in btf_bswap_type_rest()
2891 sz = sizeof(struct btf_type) + sizeof(struct btf_decl_tag); in btf_add_decl_tag()
2903 btf_decl_tag(t)->component_idx = component_idx; in btf_add_decl_tag()
H A Dlibbpf.c6680 if (!btf_is_decl_tag(t) || btf_decl_tag(t)->component_idx != -1) in bpf_prog_assign_exc_cb()
7005 arg_idx = btf_decl_tag(t)->component_idx; in bpf_program_fixup_func_info()
/linux-6.15/tools/include/uapi/linux/
H A Dbtf.h187 struct btf_decl_tag { struct
/linux-6.15/include/uapi/linux/
H A Dbtf.h187 struct btf_decl_tag { struct
/linux-6.15/include/linux/
H A Dbtf.h498 static inline struct btf_decl_tag *btf_decl_tag(const struct btf_type *t) in btf_decl_tag() function
500 return (struct btf_decl_tag *)(t + 1); in btf_decl_tag()
/linux-6.15/tools/testing/selftests/bpf/
H A Dbpf_experimental.h9 #define __contains(name, node) __attribute__((btf_decl_tag("contains:" #name ":" #node)))
242 #define __exception_cb(name) __attribute__((btf_decl_tag("exception_callback:" #name)))
H A Dbtf_helpers.c204 t->type, btf_decl_tag(t)->component_idx); in fprintf_btf_type_raw()
H A DREADME.rst286 The btf_tag selftest requires LLVM support to recognize the btf_decl_tag and
H A Dtest_loader.c447 if (t->type != func_id || btf_decl_tag(t)->component_idx != -1) in parse_test_spec()
/linux-6.15/tools/testing/selftests/bpf/prog_tests/
H A Dbtf_write.c288 ASSERT_EQ(btf_decl_tag(t)->component_idx, -1, "tag_component_idx"); in gen_btf()
298 ASSERT_EQ(btf_decl_tag(t)->component_idx, 1, "tag_component_idx"); in gen_btf()
H A Dbtf.c8062 return base_size + sizeof(struct btf_decl_tag); in btf_type_size()
/linux-6.15/Documentation/bpf/
H A Dbtf.rst487 ``btf_type`` is followed by ``struct btf_decl_tag``.::
489 struct btf_decl_tag {
494 For ``var`` or ``typedef`` type, ``btf_decl_tag.component_idx`` must be ``-1``.
495 For the other three types, if the btf_decl_tag attribute is
497 ``btf_decl_tag.component_idx`` must be ``-1``. Otherwise,
499 a ``func`` argument, and ``btf_decl_tag.component_idx`` should be a
503 ``name_off`` encodes btf_decl_tag attribute string.
/linux-6.15/tools/bpf/bpftool/
H A Dbtf.c413 const struct btf_decl_tag *tag = (const void *)(t + 1); in dump_btf_type()
531 if (btf_decl_tag(t)->component_idx != -1) in dump_btf_kfuncs()
/linux-6.15/tools/sched_ext/include/scx/
H A Dcommon.bpf.h282 #define __contains(name, node) __attribute__((btf_decl_tag("contains:" #name ":" #node)))
/linux-6.15/kernel/bpf/
H A Dbtf.c740 static const struct btf_decl_tag *btf_type_decl_tag(const struct btf_type *t) in btf_type_decl_tag()
742 return (const struct btf_decl_tag *)(t + 1); in btf_type_decl_tag()
4950 const struct btf_decl_tag *tag; in btf_decl_tag_check_meta()
/linux-6.15/lib/
H A DKconfig.debug400 btf_decl_tag) or not. Currently only clang compiler implements