diff options
author | Yonghong Song <yhs@fb.com> | 2021-09-15 00:30:58 +0200 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2021-09-15 03:45:53 +0200 |
commit | c240ba28789063690077d282f8f89e03f31037d0 (patch) | |
tree | afa3da15601872f73bf36ec456938e2a60b65034 /Documentation | |
parent | selftests/bpf: Test BTF_KIND_TAG for deduplication (diff) | |
download | linux-c240ba28789063690077d282f8f89e03f31037d0.tar.xz linux-c240ba28789063690077d282f8f89e03f31037d0.zip |
selftests/bpf: Add a test with a bpf program with btf_tag attributes
Add a bpf program with btf_tag attributes. The program is
loaded successfully with the kernel. With the command
bpftool btf dump file ./tag.o
the following dump shows that tags are properly encoded:
[8] STRUCT 'key_t' size=12 vlen=3
'a' type_id=2 bits_offset=0
'b' type_id=2 bits_offset=32
'c' type_id=2 bits_offset=64
[9] TAG 'tag1' type_id=8 component_id=-1
[10] TAG 'tag2' type_id=8 component_id=-1
[11] TAG 'tag1' type_id=8 component_id=1
[12] TAG 'tag2' type_id=8 component_id=1
...
[21] FUNC_PROTO '(anon)' ret_type_id=2 vlen=1
'x' type_id=2
[22] FUNC 'foo' type_id=21 linkage=static
[23] TAG 'tag1' type_id=22 component_id=0
[24] TAG 'tag2' type_id=22 component_id=0
[25] TAG 'tag1' type_id=22 component_id=-1
[26] TAG 'tag2' type_id=22 component_id=-1
...
[29] VAR 'total' type_id=27, linkage=global
[30] TAG 'tag1' type_id=29 component_id=-1
[31] TAG 'tag2' type_id=29 component_id=-1
If an old clang compiler, which does not support btf_tag attribute,
is used, these btf_tag attributes will be silently ignored.
Signed-off-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20210914223058.248949-1-yhs@fb.com
Diffstat (limited to 'Documentation')
0 files changed, 0 insertions, 0 deletions