Messages in this thread | | | From | Namhyung Kim <> | Subject | [PATCHSET 0/9] Sync tools headers with the kernel source | Date | Mon, 8 Apr 2024 11:55:11 -0700 |
| |
Hello,
I'm gonna carry these changes on the perf tools tree. I'll update the vhost.h once it lands on the mainline.
This is the full explanation from Arnaldo:
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.
Thanks, Namhyung
Namhyung Kim (9): tools/include: Sync uapi/drm/i915_drm.h with the kernel sources tools/include: Sync uapi/linux/fs.h with the kernel sources tools/include: Sync uapi/linux/kvm.h and asm/kvm.h with the kernel sources tools/include: Sync uapi/sound/asound.h with the kernel sources tools/include: Sync x86 CPU feature headers with the kernel sources tools/include: Sync x86 asm/irq_vectors.h with the kernel sources tools/include: Sync x86 asm/msr-index.h with the kernel sources tools/include: Sync asm-generic/bitops/fls.h with the kernel sources tools/include: Sync arm64 asm/cputype.h with the kernel sources
tools/arch/arm64/include/asm/cputype.h | 4 + tools/arch/arm64/include/uapi/asm/kvm.h | 15 +- tools/arch/powerpc/include/uapi/asm/kvm.h | 45 +- tools/arch/s390/include/uapi/asm/kvm.h | 315 +++++++- tools/arch/x86/include/asm/cpufeatures.h | 17 +- .../arch/x86/include/asm/disabled-features.h | 11 +- tools/arch/x86/include/asm/irq_vectors.h | 2 - tools/arch/x86/include/asm/msr-index.h | 74 +- .../arch/x86/include/asm/required-features.h | 3 +- tools/arch/x86/include/uapi/asm/kvm.h | 308 +++++++- tools/include/asm-generic/bitops/__fls.h | 8 +- tools/include/asm-generic/bitops/fls.h | 8 +- tools/include/uapi/drm/i915_drm.h | 16 + tools/include/uapi/linux/fs.h | 30 +- tools/include/uapi/linux/kvm.h | 689 +----------------- tools/include/uapi/sound/asound.h | 4 +- 16 files changed, 809 insertions(+), 740 deletions(-)
base-commit: 25e973a0e077da585e472b4cadb1d2f4c1113285 -- 2.44.0.478.gd926399ef9-goog
| |