From: Yonghong Song <yhs@fb.com>
To: <bpf@vger.kernel.org>
Cc: Alexei Starovoitov <ast@kernel.org>,
Andrii Nakryiko <andrii@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
"Jose E . Marchesi" <jose.marchesi@oracle.com>,
<kernel-team@fb.com>
Subject: [PATCH bpf-next 05/10] selftests/bpf: Add BTF_KIND_TYPE_TAG unit tests
Date: Tue, 9 Nov 2021 21:20:07 -0800 [thread overview]
Message-ID: <20211110052007.371167-1-yhs@fb.com> (raw)
In-Reply-To: <20211110051940.367472-1-yhs@fb.com>
Add BTF_KIND_TYPE_TAG unit tests.
Signed-off-by: Yonghong Song <yhs@fb.com>
---
tools/testing/selftests/bpf/prog_tests/btf.c | 18 ++++++++++++++++++
tools/testing/selftests/bpf/test_btf.h | 3 +++
2 files changed, 21 insertions(+)
diff --git a/tools/testing/selftests/bpf/prog_tests/btf.c b/tools/testing/selftests/bpf/prog_tests/btf.c
index ebd1aa4d09d6..ebd0ead5f4bc 100644
--- a/tools/testing/selftests/bpf/prog_tests/btf.c
+++ b/tools/testing/selftests/bpf/prog_tests/btf.c
@@ -3939,6 +3939,23 @@ static struct btf_raw_test raw_tests[] = {
.btf_load_err = true,
.err_str = "Invalid component_idx",
},
+{
+ .descr = "type_tag test #1",
+ .raw_types = {
+ BTF_TYPE_INT_ENC(0, BTF_INT_SIGNED, 0, 32, 4), /* [1] */
+ BTF_TYPE_TAG_ENC(NAME_TBD, 1), /* [2] */
+ BTF_PTR_ENC(2), /* [3] */
+ BTF_END_RAW,
+ },
+ BTF_STR_SEC("\0tag"),
+ .map_type = BPF_MAP_TYPE_ARRAY,
+ .map_name = "tag_type_check_btf",
+ .key_size = sizeof(int),
+ .value_size = 4,
+ .key_type_id = 1,
+ .value_type_id = 1,
+ .max_entries = 1,
+},
}; /* struct btf_raw_test raw_tests[] */
@@ -7255,6 +7272,7 @@ static int btf_type_size(const struct btf_type *t)
case BTF_KIND_TYPEDEF:
case BTF_KIND_FUNC:
case BTF_KIND_FLOAT:
+ case BTF_KIND_TYPE_TAG:
return base_size;
case BTF_KIND_INT:
return base_size + sizeof(__u32);
diff --git a/tools/testing/selftests/bpf/test_btf.h b/tools/testing/selftests/bpf/test_btf.h
index 32c7a57867da..128989bed8b7 100644
--- a/tools/testing/selftests/bpf/test_btf.h
+++ b/tools/testing/selftests/bpf/test_btf.h
@@ -72,4 +72,7 @@
#define BTF_DECL_TAG_ENC(value, type, component_idx) \
BTF_TYPE_ENC(value, BTF_INFO_ENC(BTF_KIND_DECL_TAG, 0, 0), type), (component_idx)
+#define BTF_TYPE_TAG_ENC(value, type) \
+ BTF_TYPE_ENC(value, BTF_INFO_ENC(BTF_KIND_TYPE_TAG, 0, 0), type)
+
#endif /* _TEST_BTF_H */
--
2.30.2
next prev parent reply other threads:[~2021-11-10 5:35 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-10 5:19 [PATCH bpf-next 00/10] Support BTF_KIND_TYPE_TAG for btf_type_tag attributes Yonghong Song
2021-11-10 5:19 ` [PATCH bpf-next 01/10] bpf: " Yonghong Song
2021-11-11 18:27 ` Andrii Nakryiko
2021-11-11 19:11 ` Yonghong Song
2021-11-10 5:19 ` [PATCH bpf-next 02/10] libbpf: Support BTF_KIND_TYPE_TAG Yonghong Song
2021-11-11 18:41 ` Andrii Nakryiko
2021-11-11 19:13 ` Yonghong Song
2021-11-10 5:19 ` [PATCH bpf-next 03/10] bpftool: " Yonghong Song
2021-11-11 18:43 ` Andrii Nakryiko
2021-11-10 5:20 ` [PATCH bpf-next 04/10] selftests/bpf: Test libbpf API function btf__add_type_tag() Yonghong Song
2021-11-11 18:44 ` Andrii Nakryiko
2021-11-10 5:20 ` Yonghong Song [this message]
2021-11-11 18:45 ` [PATCH bpf-next 05/10] selftests/bpf: Add BTF_KIND_TYPE_TAG unit tests Andrii Nakryiko
2021-11-10 5:20 ` [PATCH bpf-next 06/10] selftests/bpf: Test BTF_KIND_DECL_TAG for deduplication Yonghong Song
2021-11-11 18:49 ` Andrii Nakryiko
2021-11-11 19:13 ` Yonghong Song
2021-11-10 5:20 ` [PATCH bpf-next 07/10] selftests/bpf: Rename progs/tag.c to progs/btf_decl_tag.c Yonghong Song
2021-11-11 18:51 ` Andrii Nakryiko
2021-11-10 5:20 ` [PATCH bpf-next 08/10] selftests/bpf: Add a C test for btf_type_tag Yonghong Song
2021-11-11 18:55 ` Andrii Nakryiko
2021-11-11 19:19 ` Yonghong Song
2021-11-10 5:20 ` [PATCH bpf-next 09/10] selftests/bpf: Clarify llvm dependency with btf_tag selftest Yonghong Song
2021-11-11 18:56 ` Andrii Nakryiko
2021-11-10 5:20 ` [PATCH bpf-next 10/10] docs/bpf: Update documentation for BTF_KIND_TYPE_TAG support Yonghong Song
2021-11-11 18:56 ` Andrii Nakryiko
2021-11-10 5:28 ` [PATCH bpf-next 00/10] Support BTF_KIND_TYPE_TAG for btf_type_tag attributes Alexei Starovoitov
2021-11-10 6:26 ` Yonghong Song
2021-11-10 16:40 ` Alexei Starovoitov
2021-11-10 17:04 ` Yonghong Song
2021-11-11 1:47 ` Alexei Starovoitov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211110052007.371167-1-yhs@fb.com \
--to=yhs@fb.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=jose.marchesi@oracle.com \
--cc=kernel-team@fb.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox