mbox series

[00/12]

Message ID 20240412211604.789632-1-acme@kernel.org (mailing list archive)
Headers show
Series [01/12] core: Allow asking for a reproducible build | expand

Message

Arnaldo Carvalho de Melo April 12, 2024, 9:15 p.m. UTC
This allows us to have reproducible builds while keeping the
DWARF loading phase in parallel, achieving a noticeable speedup as
showed in the commit log messages.

- Arnaldo

v2: Don't delete the CUs after encoding BTF for them, we may still have
still references to them from the BTF encoder, as noticed by Alan
Maguire.


Arnaldo Carvalho de Melo (12):
  core: Allow asking for a reproducible build
  pahole: Disable BTF multithreaded encoded when doing reproducible
    builds
  dwarf_loader: Separate creating the cu/dcu pair from processing it
  dwarf_loader: Introduce dwarf_cus__process_cu()
  dwarf_loader: Create the cu/dcu pair in dwarf_cus__nextcu()
  dwarf_loader: Remove unused 'thr_data' arg from
    dwarf_cus__create_and_process_cu()
  core: Add unlocked cus__add() variant
  core: Add cus__remove(), counterpart of cus__add()
  dwarf_loader: Add the cu to the cus list early, remove on LSK_DELETE
  core/dwarf_loader: Add functions to set state of CU processing
  pahole: Encode BTF serially in a reproducible build
  tests: Add a BTF reproducible generation test

 dwarf_loader.c              | 73 ++++++++++++++++++++++++---------
 dwarves.c                   | 62 +++++++++++++++++++++++++++-
 dwarves.h                   | 17 ++++++++
 pahole.c                    | 81 +++++++++++++++++++++++++++++++++++--
 tests/reproducible_build.sh | 56 +++++++++++++++++++++++++
 5 files changed, 265 insertions(+), 24 deletions(-)
 create mode 100755 tests/reproducible_build.sh