linux-debuggers.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Stephen Brennan <stephen.s.brennan@oracle.com>
Cc: Andrii Nakryiko <andrii.nakryiko@gmail.com>,
	bpf@vger.kernel.org, dwarves@vger.kernel.org,
	linux-debuggers@vger.kernel.org,
	Alan Maguire <alan.maguire@oracle.com>
Subject: Re: [PATCH dwarves v4 0/4] Emit global variables in BTF
Date: Mon, 7 Oct 2024 16:00:04 -0300	[thread overview]
Message-ID: <ZwQvtCJN5idM92z_@x1> (raw)
In-Reply-To: <ZwQs8K7VUrITuUtO@x1>

On Mon, Oct 07, 2024 at 03:48:16PM -0300, Arnaldo Carvalho de Melo wrote:
> On Mon, Oct 07, 2024 at 10:24:01AM -0700, Stephen Brennan wrote:
> > Andrii Nakryiko <andrii.nakryiko@gmail.com> writes:
> > > On Fri, Oct 4, 2024 at 2:21 PM Arnaldo Carvalho de Melo <acme@kernel.org> wrote:
> > >>
> > >> On Fri, Oct 04, 2024 at 10:26:24AM -0700, Stephen Brennan wrote:
> > >> > Hi all,
> > >> >
> > >> > This is v4 of the series which adds global variables to pahole's generated BTF.
> > >> >
> > >> > Since v3:
> > >> >
> > >> > 1. Gathered Alan's Reviewed-by + Tested-by, and Jiri's Acked-by.
> > >> > 2. Consistently start shndx loops at 1, and use size_t.
> > >> > 3. Since patch 1 of v3 was already applied, I dropped it out of this series.
> > >> >
> > >> > v3: https://lore.kernel.org/dwarves/20241002235253.487251-1-stephen.s.brennan@oracle.com/
> > >> > v2: https://lore.kernel.org/dwarves/20240920081903.13473-1-stephen.s.brennan@oracle.com/
> > >> > v1: https://lore.kernel.org/dwarves/20240912190827.230176-1-stephen.s.brennan@oracle.com/
> > >> >
> > >> > Thanks everyone for your review, tests, and consideration!
> > >>
> > >> Looks ok, I run the existing regression tests:
> > >>
> > >> acme@x1:~/git/pahole$ tests/tests
> > >>   1: Validation of BTF encoding of functions; this may take some time: Ok
> > >>   2: Pretty printing of files using DWARF type information: Ok
> > >>   3: Parallel reproducible DWARF Loading/Serial BTF encoding: Ok
> > >> /home/acme/git/pahole
> > >> acme@x1:~/git/pahole$
> > >>
> > >> And now I'm building a kernel with clang + Thin LTO + Rust enabled in
> > >> the kernel to test other fixes I have merged and doing that with your
> > >> patch series.
> > >>
> > >> Its all in the next branch and will move to master later today or
> > >> tomorrow when I finish the clang+LTO+Rust tests.
> > >
> > > pahole-staging testing in libbpf CI started failing recently, can you
> > > please double-check and see if this was caused by these changes? They
> > > seem to be related to encoding BTF for per-CPU global variables, so
> > > might be relevant ([0] for full run logs)
> > >
> > >   #33      btf_dump:FAIL
> > >   libbpf: extern (var ksym) 'bpf_prog_active': not found in kernel BTF
> > >   libbpf: failed to load object 'kfunc_call_test_subprog'
> > >   libbpf: failed to load BPF skeleton 'kfunc_call_test_subprog': -22
> > >   test_subprog:FAIL:skel unexpected error: -22
> > >   #126/17  kfunc_call/subprog:FAIL
> > >   test_subprog_lskel:FAIL:skel unexpected error: -2
> > >   #126/18  kfunc_call/subprog_lskel:FAIL
> > >   #126     kfunc_call:FAIL
> > >   test_ksyms_module_lskel:FAIL:test_ksyms_module_lskel__open_and_load
> > > unexpected error: -2
> > >   #135/1   ksyms_module/lskel:FAIL
> > >   libbpf: extern (var ksym) 'bpf_testmod_ksym_percpu': not found in kernel BTF
> > >   libbpf: failed to load object 'test_ksyms_module'
> > >   libbpf: failed to load BPF skeleton 'test_ksyms_module': -22
> > >   test_ksyms_module_libbpf:FAIL:test_ksyms_module__open unexpected error: -22
> > >   #135/2   ksyms_module/libbpf:FAIL
> > >
> > >
> > >   [0] https://github.com/libbpf/libbpf/actions/runs/11204199648/job/31142297399#step:4:12480
> > 
> > Hi Andrii,
> > 
> > Thanks for the report.
> > 
> > The error: "'bpf_prog_active' not found in kernel BTF" sounds like it's
> > related to a bug that was present in v4 of this patch series:
> > 
> > https://lore.kernel.org/dwarves/ZwPob57HKYbfNpOH@x1/T/#t
> > 
> > Basically due to poor testing of a small refactor on my part, pahole
> > failed to emit almost all of the variables for BTF, so it would very
> > likely cause this error. And I think this broken commit may have been
> > hanging around in the git repository for the weekend, maybe Arnaldo can
> > confirm whether or not it was fixed up.
> > 
> > I cannot see the git SHA for the pahole branch which was used in this CI
> > run, so I can't say for sure. But I do see that the "tmp.master" branch
> > is now fixed up, so a re-run would verify whether this is the root
> > cause.
> 
> right, that is a piece of info I sometimes miss, the SHA used for the
> test run, but today's test is in progress and should have the fix for
> the inverted logic, we'll see...

https://github.com/libbpf/libbpf/actions/runs/11221662157/job/31192457160

Passed, so and here as well:

acme@x1:~/git/pahole$ tests/tests 
  1: Validation of BTF encoding of functions; this may take some time: Ok
  2: Pretty printing of files using DWARF type information: Ok
  3: Parallel reproducible DWARF Loading/Serial BTF encoding: Ok
acme@x1:~/git/pahole$

- Arnaldo

  reply	other threads:[~2024-10-07 19:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-04 17:26 [PATCH dwarves v4 0/4] Emit global variables in BTF Stephen Brennan
2024-10-04 17:26 ` [PATCH dwarves v4 1/4] btf_encoder: stop indexing symbols for VARs Stephen Brennan
2024-10-04 17:26 ` [PATCH dwarves v4 2/4] btf_encoder: explicitly check addr/size for u32 overflow Stephen Brennan
2024-10-04 17:26 ` [PATCH dwarves v4 3/4] btf_encoder: allow encoding VARs from many sections Stephen Brennan
2024-10-04 17:26 ` [PATCH dwarves v4 4/4] pahole: add global_var BTF feature Stephen Brennan
2024-10-04 20:58 ` [PATCH dwarves v4 0/4] Emit global variables in BTF Arnaldo Carvalho de Melo
2024-10-04 21:01   ` Arnaldo Carvalho de Melo
2024-10-07 17:12   ` Andrii Nakryiko
2024-10-07 17:24     ` Stephen Brennan
2024-10-07 18:48       ` Arnaldo Carvalho de Melo
2024-10-07 19:00         ` Arnaldo Carvalho de Melo [this message]
2024-10-07 21:46           ` Andrii Nakryiko

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=ZwQvtCJN5idM92z_@x1 \
    --to=acme@kernel.org \
    --cc=alan.maguire@oracle.com \
    --cc=andrii.nakryiko@gmail.com \
    --cc=bpf@vger.kernel.org \
    --cc=dwarves@vger.kernel.org \
    --cc=linux-debuggers@vger.kernel.org \
    --cc=stephen.s.brennan@oracle.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;
as well as URLs for NNTP newsgroup(s).