mbox series

[bpf-next,0/5] bpf: add support for BTF_KIND_DECL_TAG typedef

Message ID 20211021195622.4018339-1-yhs@fb.com (mailing list archive)
Headers show
Series bpf: add support for BTF_KIND_DECL_TAG typedef | expand

Message

Yonghong Song Oct. 21, 2021, 7:56 p.m. UTC
Latest upstream llvm-project added support for btf_decl_tag attributes
for typedef declarations ([1], [2]). Similar to other btf_decl_tag cases,
func/func_param/global_var/struct/union/field, btf_decl_tag with typedef
declaration can carry information from kernel source to clang compiler
and then to dwarf/BTF, for bpf verification or other use cases.

This patch set added kernel support for BTF_KIND_DECL_TAG to typedef
declaration (Patch 1). Additional selftests are added to cover
unit testing, dedup, or bpf program usage of btf_decl_tag with typedef.
(Patches 2, 3 and 4). The btf documentation is updated to include
BTF_KIND_DECL_TAG typedef (Patch 5).

  [1] https://reviews.llvm.org/D110127
  [2] https://reviews.llvm.org/D112259

Yonghong Song (5):
  bpf: add BTF_KIND_DECL_TAG typedef support
  selftests/bpf: add BTF_KIND_DECL_TAG typedef unit tests
  selftests/bpf: test deduplication for BTF_KIND_DECL_TAG typedef
  selftests/bpf: add BTF_KIND_DECL_TAG typedef example in tag.c
  docs/bpf: update documentation for BTF_KIND_DECL_TAG typedef support

 Documentation/bpf/btf.rst                    |  6 +-
 kernel/bpf/btf.c                             |  4 +-
 tools/testing/selftests/bpf/prog_tests/btf.c | 83 ++++++++++++++++++--
 tools/testing/selftests/bpf/progs/tag.c      |  9 ++-
 4 files changed, 89 insertions(+), 13 deletions(-)

Comments

Alexei Starovoitov Oct. 23, 2021, 12:05 a.m. UTC | #1
On Thu, Oct 21, 2021 at 12:56 PM Yonghong Song <yhs@fb.com> wrote:
>
> Latest upstream llvm-project added support for btf_decl_tag attributes
> for typedef declarations ([1], [2]). Similar to other btf_decl_tag cases,
> func/func_param/global_var/struct/union/field, btf_decl_tag with typedef
> declaration can carry information from kernel source to clang compiler
> and then to dwarf/BTF, for bpf verification or other use cases.
>
> This patch set added kernel support for BTF_KIND_DECL_TAG to typedef
> declaration (Patch 1). Additional selftests are added to cover
> unit testing, dedup, or bpf program usage of btf_decl_tag with typedef.
> (Patches 2, 3 and 4). The btf documentation is updated to include
> BTF_KIND_DECL_TAG typedef (Patch 5).
>
>   [1] https://reviews.llvm.org/D110127
>   [2] https://reviews.llvm.org/D112259

Applied. Thanks