Re: ANNOUNCE: pahole v1.23 (BTF tags and alignment inference)

Andrii Nakryiko
2021-12-08T18:49:40Z

On Wed, Dec 8, 2021 at 10:37 AM Arnaldo Carvalho de Melo
<acme@kernel.org> wrote:
>
> Em Wed, Dec 08, 2021 at 03:35:36PM -0300, Arnaldo Carvalho de Melo escreveu:
> > Em Wed, Dec 08, 2021 at 03:26:31PM +0100, Jan Engelhardt escreveu:
> > > On Wednesday 2021-12-08 14:54, Arnaldo Carvalho de Melo wrote:
> > > > The v1.23 release of pahole and its friends is out, this time
> > > >the main new features are the ability to encode BTF tags, to carry
> > >
> > > [ 7s] /home/abuild/rpmbuild/BUILD/dwarves-1.23/btf_encoder.c:145:10: error: 'BTF_KIND_DECL_TAG' undeclared here (not in a function); did you mean 'BTF_KIND_FLOAT'?
>
> > > libbpf-0.5.0 is present, since CMakeLists.txt checked for >= 0.4.0.
>
> > My fault, knowing the flux that libbpf is in getting to 1.0 I should
> > have retested with the perf tools container based tests.
>
> > Can you think about some fix for that? Lemme see if BTF_KIND_DECL_TAG is
> > a define or an enum...
>
> enum {
> BTF_KIND_UNKN = 0, /* Unknown */
> BTF_KIND_INT = 1, /* Integer */
> BTF_KIND_PTR = 2, /* Pointer */
> BTF_KIND_ARRAY = 3, /* Array */
> BTF_KIND_STRUCT = 4, /* Struct */
> BTF_KIND_UNION = 5, /* Union */
> BTF_KIND_ENUM = 6, /* Enumeration */
> BTF_KIND_FWD = 7, /* Forward */
> BTF_KIND_TYPEDEF = 8, /* Typedef */
> BTF_KIND_VOLATILE = 9, /* Volatile */
> BTF_KIND_CONST = 10, /* Const */
> BTF_KIND_RESTRICT = 11, /* Restrict */
> BTF_KIND_FUNC = 12, /* Function */
> BTF_KIND_FUNC_PROTO = 13, /* Function Proto */
> BTF_KIND_VAR = 14, /* Variable */
> BTF_KIND_DATASEC = 15, /* Section */
> BTF_KIND_FLOAT = 16, /* Floating point */
> BTF_KIND_DECL_TAG = 17, /* Decl Tag */
> BTF_KIND_TYPE_TAG = 18, /* Type Tag */
>
> NR_BTF_KINDS,
> BTF_KIND_MAX = NR_BTF_KINDS - 1,
> };
>
> Do you guys have any plans on updating libbpf?
>

In what sense? It's already updated and knows about all those new KINDS ([0])

[0] https://github.com/libbpf/libbpf/blob/3ef05a585efd47abf4dc92265430d0248d7f388a/src/btf.c#L302

> - Arnaldo