| /linux-6.15/tools/testing/selftests/bpf/progs/ |
| H A D | bpf_misc.h | 118 #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 D | test_btf_decl_tag.c | 7 #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 D | bpf_helpers.h | 206 #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 D | btf.h | 607 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 D | btf.c | 326 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 D | libbpf.c | 6680 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 D | btf.h | 187 struct btf_decl_tag { struct
|
| /linux-6.15/include/uapi/linux/ |
| H A D | btf.h | 187 struct btf_decl_tag { struct
|
| /linux-6.15/include/linux/ |
| H A D | btf.h | 498 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 D | bpf_experimental.h | 9 #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 D | btf_helpers.c | 204 t->type, btf_decl_tag(t)->component_idx); in fprintf_btf_type_raw()
|
| H A D | README.rst | 286 The btf_tag selftest requires LLVM support to recognize the btf_decl_tag and
|
| H A D | test_loader.c | 447 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 D | btf_write.c | 288 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 D | btf.c | 8062 return base_size + sizeof(struct btf_decl_tag); in btf_type_size()
|
| /linux-6.15/Documentation/bpf/ |
| H A D | btf.rst | 487 ``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 D | btf.c | 413 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 D | common.bpf.h | 282 #define __contains(name, node) __attribute__((btf_decl_tag("contains:" #name ":" #node)))
|
| /linux-6.15/kernel/bpf/ |
| H A D | btf.c | 740 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 D | Kconfig.debug | 400 btf_decl_tag) or not. Currently only clang compiler implements
|