• Namhyung Kim's avatar
    tools headers: Update tools's copy of arm64/asm headers · fad8afdc
    Namhyung Kim authored
    tldr; Just FYI, I'm carrying this on the perf tools tree.
    
    Full explanation:
    
    There used to be no copies, with tools/ code using kernel headers
    directly. From time to time tools/perf/ broke due to legitimate kernel
    hacking. At some point Linus complained about such direct usage. Then we
    adopted the current model.
    
    The way these headers are used in perf are not restricted to just
    including them to compile something.
    
    There are sometimes used in scripts that convert defines into string
    tables, etc, so some change may break one of these scripts, or new MSRs
    may use some different #define pattern, etc.
    
    E.g.:
    
      $ ls -1 tools/perf/trace/beauty/*.sh | head -5
      tools/perf/trace/beauty/arch_errno_names.sh
      tools/perf/trace/beauty/drm_ioctl.sh
      tools/perf/trace/beauty/fadvise.sh
      tools/perf/trace/beauty/fsconfig.sh
      tools/perf/trace/beauty/fsmount.sh
      $
      $ tools/perf/trace/beauty/fadvise.sh
      static const char *fadvise_advices[] = {
            [0] = "NORMAL",
            [1] = "RANDOM",
            [2] = "SEQUENTIAL",
            [3] = "WILLNEED",
            [4] = "DONTNEED",
            [5] = "NOREUSE",
      };
      $
    
    The tools/perf/check-headers.sh script, part of the tools/ build
    process, points out changes in the original files.
    
    So its important not to touch the copies in tools/ when doing changes in
    the original kernel headers, that will be done later, when
    check-headers.sh inform about the change to the perf tools hackers.
    
    Cc: Catalin Marinas <catalin.marinas@arm.com>
    Cc: Will Deacon <will@kernel.org>
    Cc: linux-arm-kernel@lists.infradead.org
    Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
    Link: https://lore.kernel.org/r/20231121225650.390246-9-namhyung@kernel.org
    fad8afdc
perf_regs.h 1.04 KB