[PATCH v3 00/11] Libdw/dwarf build clean up

Namhyung Kim namhyung at kernel.org
Fri Oct 18 10:15:48 PDT 2024


On Wed, Oct 16, 2024 at 05:13:43PM -0700, Ian Rogers wrote:
> These patches were originally on top of:
> https://lore.kernel.org/lkml/20240924003720.617258-1-irogers@google.com/
> where it was pointed out that a lot of the libdw conditional
> compilation was due to features that have now been standard for 10 or
> 15 years. The patches remove the conditional compilation assuming the
> features are in libdw where the feature test is expanded to check
> there pressence. The patch series is now on top of:
> https://lore.kernel.org/lkml/20241016235622.52166-1-irogers@google.com/
> 
> In the Makefile code, and for `perf record --call-graph`, dwarf tends
> to mean unwind or libdw support for dwarf things. To make it clearer
> when dwarf really just means libdw numerous build variables and
> defines are renamed.
> 
> There is some tech debt in the changes as perf check still reports the
> values using the old name and for features that are no longer
> tested. This can be cleanup for another day.
> 
> v3: Move PERF_HAVE_DWARF_REGS cleanup to follow up patch series. Add
>     build fix from patch series these changes are on top of.
> v2: Instead of renaming PERF_HAVE_DWARF_REGS to PERF_HAVE_LIBDW_REGS,
>     remove it.
> 
> Ian Rogers (11):
>   perf build: Fix LIBDW_DIR
>   perf build: Rename NO_DWARF to NO_LIBDW
>   perf build: Remove defined but never used variable
>   perf build: Rename test-dwarf to test-libdw
>   perf build: Combine libdw-dwarf-unwind into libdw feature tests
>   perf build: Combine test-dwarf-getlocations into test-libdw
>   perf build: Combine test-dwarf-getcfi into test-libdw
>   perf probe: Move elfutils support check to libdw check
>   perf libdw: Remove unnecessary defines
>   perf build: Rename HAVE_DWARF_SUPPORT to HAVE_LIBDW_SUPPORT
>   perf build: Rename CONFIG_DWARF to CONFIG_LIBDW

Acked-by: Namhyung Kim <namhyung at kernel.org>

Thanks,
Namhyung

> 
>  tools/build/Makefile.feature                  | 11 +---
>  tools/build/feature/Makefile                  | 24 ++------
>  tools/build/feature/test-all.c                | 16 +-----
>  tools/build/feature/test-dwarf.c              | 11 ----
>  tools/build/feature/test-dwarf_getcfi.c       |  9 ---
>  tools/build/feature/test-dwarf_getlocations.c | 13 -----
>  tools/build/feature/test-libdw-dwarf-unwind.c | 14 -----
>  tools/build/feature/test-libdw.c              | 56 +++++++++++++++++++
>  tools/perf/Documentation/perf-check.txt       |  6 +-
>  tools/perf/Makefile.config                    | 47 +++++-----------
>  tools/perf/Makefile.perf                      |  2 +-
>  tools/perf/arch/arm/Makefile                  |  2 +-
>  tools/perf/arch/arm/util/Build                |  2 +-
>  tools/perf/arch/arm64/Makefile                |  2 +-
>  tools/perf/arch/arm64/util/Build              |  2 +-
>  tools/perf/arch/csky/Makefile                 |  2 +-
>  tools/perf/arch/csky/util/Build               |  2 +-
>  tools/perf/arch/loongarch/Makefile            |  2 +-
>  tools/perf/arch/loongarch/util/Build          |  2 +-
>  tools/perf/arch/mips/Makefile                 |  2 +-
>  tools/perf/arch/mips/util/Build               |  2 +-
>  tools/perf/arch/powerpc/Makefile              |  2 +-
>  .../perf/arch/powerpc/annotate/instructions.c |  4 +-
>  tools/perf/arch/powerpc/util/Build            |  4 +-
>  tools/perf/arch/riscv/Makefile                |  2 +-
>  tools/perf/arch/riscv/util/Build              |  2 +-
>  tools/perf/arch/s390/Makefile                 |  2 +-
>  tools/perf/arch/s390/util/Build               |  2 +-
>  tools/perf/arch/sh/Makefile                   |  2 +-
>  tools/perf/arch/sh/util/Build                 |  2 +-
>  tools/perf/arch/sparc/Makefile                |  2 +-
>  tools/perf/arch/sparc/util/Build              |  2 +-
>  tools/perf/arch/x86/Makefile                  |  2 +-
>  tools/perf/arch/x86/annotate/instructions.c   |  2 +-
>  tools/perf/arch/x86/util/Build                |  2 +-
>  tools/perf/arch/xtensa/Makefile               |  2 +-
>  tools/perf/arch/xtensa/util/Build             |  2 +-
>  tools/perf/builtin-annotate.c                 |  2 +-
>  tools/perf/builtin-check.c                    |  6 +-
>  tools/perf/builtin-probe.c                    | 14 ++---
>  tools/perf/builtin-report.c                   |  4 +-
>  tools/perf/util/Build                         | 12 ++--
>  tools/perf/util/annotate-data.h               |  8 +--
>  tools/perf/util/debuginfo.h                   |  6 +-
>  tools/perf/util/disasm.c                      |  4 +-
>  tools/perf/util/disasm.h                      |  4 +-
>  tools/perf/util/dwarf-aux.c                   |  6 --
>  tools/perf/util/dwarf-aux.h                   | 54 ------------------
>  tools/perf/util/genelf.c                      |  4 +-
>  tools/perf/util/genelf.h                      |  2 +-
>  tools/perf/util/include/dwarf-regs.h          |  6 +-
>  tools/perf/util/probe-event.c                 |  4 +-
>  tools/perf/util/probe-finder.c                |  6 --
>  tools/perf/util/probe-finder.h                |  6 +-
>  54 files changed, 154 insertions(+), 259 deletions(-)
>  delete mode 100644 tools/build/feature/test-dwarf.c
>  delete mode 100644 tools/build/feature/test-dwarf_getcfi.c
>  delete mode 100644 tools/build/feature/test-dwarf_getlocations.c
>  delete mode 100644 tools/build/feature/test-libdw-dwarf-unwind.c
>  create mode 100644 tools/build/feature/test-libdw.c
> 
> -- 
> 2.47.0.105.g07ac214952-goog
> 



More information about the linux-arm-kernel mailing list