On Thu, May 27, 2021 at 8:20 AM Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote: > > Hi guys, > > Its important to have 1.22 out of the door ASAP, so please clone > what is in tmp.master and report your results. > Hey Arnaldo, If we are going to make pahole 1.22 a new mandatory minimal version of pahole, I think we should take a little bit of time and fix another problematic issue and clean up Kbuild significantly. We discussed this before, it would be great to have an ability to dump generated BTF into a separate file instead of modifying vmlinux image in place. I'd say let's try to push for [0] to land as a temporary work around to buy us a bit of time to implement this feature. Then, when pahole 1.22 is released and packaged into major distros, we can follow up in kernel with Kbuild clean ups and making pahole 1.22 mandatory. What do you think? If anyone agrees, please consider chiming in on the above thread ([0]). [0] https://lore.kernel.org/bpf/20210526080741.GW30378@xxxxxxxxxxxxxxxxxxx/ > To make it super easy: > > [acme@quaco pahole]$ cd /tmp > [acme@quaco tmp]$ git clone git://git.kernel.org/pub/scm/devel/pahole/pahole.git > Cloning into 'pahole'... > remote: Enumerating objects: 6510, done. > remote: Total 6510 (delta 0), reused 0 (delta 0), pack-reused 6510 > Receiving objects: 100% (6510/6510), 1.63 MiB | 296.00 KiB/s, done. > Resolving deltas: 100% (4550/4550), done. > [acme@quaco tmp]$ cd pahole/ > [acme@quaco pahole]$ git checkout origin/tmp.master > Note: switching to 'origin/tmp.master'. > > You are in 'detached HEAD' state. You can look around, make experimental > changes and commit them, and you can discard any commits you make in this > state without impacting any branches by switching back to a branch. > > If you want to create a new branch to retain commits you create, you may > do so (now or later) by using -c with the switch command. Example: > > git switch -c <new-branch-name> > > Or undo this operation with: > > git switch - > > Turn off this advice by setting config variable advice.detachedHead to false > > HEAD is now at 0d17503db0580a66 btf_encoder: fix and complete filtering out zero-sized per-CPU variables > [acme@quaco pahole]$ git log --oneline -5 > 0d17503db0580a66 (HEAD, origin/tmp.master) btf_encoder: fix and complete filtering out zero-sized per-CPU variables > fb418f9d8384d3a9 dwarves: Make handling of NULL by destructos consistent > f049fe9ebf7aa9c2 dutil: Make handling of NULL by destructos consistent > 1512ab8ab6fe76a9 pahole: Make handling of NULL by destructos consistent > 1105b7dad2d0978b elf_symtab: Use zfree() where applicable > [acme@quaco pahole]$ mkdir build > [acme@quaco pahole]$ cd build > [acme@quaco build]$ cmake .. > <SNIP> > -- Build files have been written to: /tmp/pahole/build > [acme@quaco build]$ cd .. > [acme@quaco pahole]$ make -j8 -C build > make: Entering directory '/tmp/pahole/build' > <SNIP> > [100%] Built target pahole > make[1]: Leaving directory '/tmp/pahole/build' > make: Leaving directory '/tmp/pahole/build' > [acme@quaco pahole]$ > > Then make sure build/pahole is in your path and try your workloads. > > Jiri, Michael, if you could run your tests with this, that would be awesome, > > Thanks in advance! > > - Arnaldo