# git rev-parse -q --verify 1bbeaf83dd7b5e3628b98bec66ff8fe2646e14aa^{commit} 1bbeaf83dd7b5e3628b98bec66ff8fe2646e14aa already have revision, skipping fetch # git checkout -q -f -B kisskb 1bbeaf83dd7b5e3628b98bec66ff8fe2646e14aa # git clean -qxdf # < git log -1 # commit 1bbeaf83dd7b5e3628b98bec66ff8fe2646e14aa # Merge: 63bd30f249dc 0f66dfe7b91d # Author: Linus Torvalds # Date: Thu Mar 14 16:31:23 2024 -0700 # # Merge tag 'perf-tools-for-v6.9-2024-03-13' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools # # Pull perf tools updates from Namhyung Kim: # "perf stat: # # - Support new 'cluster' aggregation mode for shared resources # depending on the hardware configuration: # # $ sudo perf stat -a --per-cluster -e cycles,instructions sleep 1 # # Performance counter stats for 'system wide': # # S0-D0-CLS0 2 85,051,822 cycles # S0-D0-CLS0 2 73,909,908 instructions # 0.87 insn per cycle # S0-D0-CLS2 2 93,365,918 cycles # S0-D0-CLS2 2 83,006,158 instructions # 0.89 insn per cycle # S0-D0-CLS4 2 104,157,523 cycles # S0-D0-CLS4 2 53,234,396 instructions # 0.51 insn per cycle # S0-D0-CLS6 2 65,891,079 cycles # S0-D0-CLS6 2 41,478,273 instructions # 0.63 insn per cycle # # 1.002407989 seconds time elapsed # # - Various fixes and cleanups for event metrics including NaN handling # # perf script: # # - Use libcapstone if available to disassemble the instructions. This # enables 'perf script -F disasm' and 'perf script --insn-trace=disasm' # (for Intel-PT): # # $ perf script -F event,ip,disasm # cycles:P: ffffffffa988d428 wrmsr # cycles:P: ffffffffa9839d25 movq %rax, %r14 # cycles:P: ffffffffa9cdcaf0 endbr64 # cycles:P: ffffffffa988d428 wrmsr # cycles:P: ffffffffa988d428 wrmsr # cycles:P: ffffffffaa401f86 iretq # cycles:P: ffffffffa99c4de5 movq 0x30(%rcx), %r8 # cycles:P: ffffffffa988d428 wrmsr # cycles:P: ffffffffaa401f86 iretq # cycles:P: ffffffffa9907983 movl 0x68(%rbx), %eax # cycles:P: ffffffffa988d428 wrmsr # # - Expose sample ID / stream ID to python scripts # # perf test: # # - Add more perf test cases from Redhat internal test suites. This # time it adds the base infra and a few perf probe tests. More to # come. :) # # - Add 'perf test -p' for parallel execution and fix some issues found # by the parallel test # # - Support symbol test to print symbols in given (active) module: # # $ perf test -F -v Symbols --dso /lib/modules/$(uname -r)/kernel/fs/ext4/ext4.ko # --- start --- # Testing /lib/modules/6.5.13-1rodete2-amd64/kernel/fs/ext4/ext4.ko # Overlapping symbols: # 7a990-7a9a0 l __pfx_ext4_exit_fs # 7a990-7a9a0 g __pfx_cleanup_module # Overlapping symbols: # 7a9a0-7aa1c l ext4_exit_fs # 7a9a0-7aa1c g cleanup_module # ... # # JSON metric updates: # # - A new round of Intel metric updates # # - Support Power11 PVR (compatible to Power10) # # - Fix cache latency events on Zen 4 to set SliceId properly # # Internal: # # - Fix reference counting for 'map' data structure, tireless work from # Ian! # # - More memory optimization for struct thread and annotate histogram. # Now, 'perf report' (TUI) and 'perf annotate' should be much # lighter-weight in terms of memory footprint # # - Support cross-arch perf register access. Clean up the build # configuration so that it can detect arch-register support at # runtime. This can allow to parse register data in sample which was # recorded in a different arch # # Others: # # - Sync task state in 'perf sched' to kernel using trace event fields. # The task states have been changed so tools cannot assume a fixed # encoding # # - Clean up 'perf mem' to generalize the arch-specific events # # - Add support for local and global variables to data type profiling. # This would increase the success rate of type resolution with DWARF # # - Add short option -H for --hierarchy in 'perf report' and 'perf top'" # # * tag 'perf-tools-for-v6.9-2024-03-13' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools: (154 commits) # perf annotate: Add comments in the data structures # perf annotate: Remove sym_hist.addr[] array # perf annotate: Calculate instruction overhead using hashmap # perf annotate: Add a hashmap for symbol histogram # perf threads: Reduce table size from 256 to 8 # perf threads: Switch from rbtree to hashmap # perf threads: Move threads to its own files # perf machine: Move machine's threads into its own abstraction # perf machine: Move fprintf to for_each loop and a callback # perf trace: Ignore thread hashing in summary # perf report: Sort child tasks by tid # perf vendor events amd: Fix Zen 4 cache latency events # perf version: Display availability of OpenCSD support # perf vendor events intel: Add umasks/occ_sel to PCU events. # perf map: Fix map reference count issues # libperf evlist: Avoid out-of-bounds access # perf lock contention: Account contending locks too # perf metrics: Fix segv for metrics with no events # perf metrics: Fix metric matching # perf pmu: Fix a potential memory leak in perf_pmu__lookup() # ... # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux-ld --version # < git log --format=%s --max-count=1 1bbeaf83dd7b5e3628b98bec66ff8fe2646e14aa # make -s -j 160 ARCH=sparc64 O=/kisskb/build/linus_allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_HAVE_FTRACE_MCOUNT_RECORD=n # Added to kconfig CONFIG_SAMPLES=n # Added to kconfig CONFIG_MODULE_SIG=n # < make -s -j 160 ARCH=sparc64 O=/kisskb/build/linus_allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- help # make -s -j 160 ARCH=sparc64 O=/kisskb/build/linus_allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- olddefconfig # make -s -j 160 ARCH=sparc64 O=/kisskb/build/linus_allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- :1519:2: warning: #warning syscall clone3 not implemented [-Wcpp] cc1: warning: unrecognized command line option '-Wno-shift-negative-value' cc1: warning: unrecognized command line option '-Wno-stringop-overflow' /kisskb/src/arch/sparc/prom/p1275.c:52:6: error: no previous prototype for 'prom_cif_init' [-Werror=missing-prototypes] void prom_cif_init(void *cif_handler, void *cif_stack) ^ /kisskb/src/arch/sparc/prom/misc_64.c:165:5: error: no previous prototype for 'prom_get_mmu_ihandle' [-Werror=missing-prototypes] int prom_get_mmu_ihandle(void) ^ cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[4]: *** [/kisskb/src/scripts/Makefile.build:243: arch/sparc/prom/p1275.o] Error 1 make[4]: *** Waiting for unfinished jobs.... cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[4]: *** [/kisskb/src/scripts/Makefile.build:243: arch/sparc/prom/misc_64.o] Error 1 /kisskb/src/arch/sparc/power/hibernate.c:22:5: error: no previous prototype for 'pfn_is_nosave' [-Werror=missing-prototypes] int pfn_is_nosave(unsigned long pfn) ^ /kisskb/src/arch/sparc/power/hibernate.c:30:6: error: no previous prototype for 'save_processor_state' [-Werror=missing-prototypes] void save_processor_state(void) ^ /kisskb/src/arch/sparc/power/hibernate.c:35:6: error: no previous prototype for 'restore_processor_state' [-Werror=missing-prototypes] void restore_processor_state(void) ^ /kisskb/src/arch/sparc/vdso/vma.c:246:12: error: no previous prototype for 'init_vdso_image' [-Werror=missing-prototypes] int __init init_vdso_image(const struct vdso_image *image, ^ cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[4]: *** [/kisskb/src/scripts/Makefile.build:243: arch/sparc/power/hibernate.o] Error 1 make[3]: *** [/kisskb/src/scripts/Makefile.build:481: arch/sparc/power] Error 2 make[3]: *** Waiting for unfinished jobs.... cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[5]: *** [/kisskb/src/scripts/Makefile.build:243: arch/sparc/vdso/vma.o] Error 1 make[4]: *** [/kisskb/src/scripts/Makefile.build:481: arch/sparc/vdso] Error 2 make[4]: *** Waiting for unfinished jobs.... make[3]: *** [/kisskb/src/scripts/Makefile.build:481: arch/sparc/prom] Error 2 /kisskb/src/arch/sparc/kernel/traps_64.c:253:6: error: no previous prototype for 'is_no_fault_exception' [-Werror=missing-prototypes] bool is_no_fault_exception(struct pt_regs *regs) ^ /kisskb/src/arch/sparc/kernel/traps_64.c:2035:6: error: no previous prototype for 'do_mcd_err' [-Werror=missing-prototypes] void do_mcd_err(struct pt_regs *regs, struct sun4v_error_entry ent) ^ /kisskb/src/arch/sparc/kernel/traps_64.c:2153:6: error: no previous prototype for 'sun4v_nonresum_error_user_handled' [-Werror=missing-prototypes] bool sun4v_nonresum_error_user_handled(struct pt_regs *regs, ^ /kisskb/src/arch/sparc/mm/init_64.c:2644:6: error: no previous prototype for 'vmemmap_free' [-Werror=missing-prototypes] void vmemmap_free(unsigned long start, unsigned long end, ^ cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[5]: *** [/kisskb/src/scripts/Makefile.build:243: arch/sparc/kernel/traps_64.o] Error 1 make[4]: *** [/kisskb/src/scripts/Makefile.build:481: arch/sparc/kernel] Error 2 cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[5]: *** [/kisskb/src/scripts/Makefile.build:243: arch/sparc/mm/init_64.o] Error 1 make[4]: *** [/kisskb/src/scripts/Makefile.build:481: arch/sparc/mm] Error 2 make[3]: *** [/kisskb/src/scripts/Makefile.build:481: arch/sparc] Error 2 In file included from /kisskb/src/arch/sparc/include/asm/floppy.h:5:0, from /kisskb/src/drivers/block/floppy.c:250: /kisskb/src/arch/sparc/include/asm/floppy_64.h:200:13: error: no previous prototype for 'sparc_floppy_irq' [-Werror=missing-prototypes] irqreturn_t sparc_floppy_irq(int irq, void *dev_cookie) ^ In file included from /kisskb/src/arch/sparc/include/asm/floppy.h:5:0, from /kisskb/src/drivers/block/floppy.c:250: /kisskb/src/arch/sparc/include/asm/floppy_64.h:437:6: error: no previous prototype for 'sun_pci_fd_dma_callback' [-Werror=missing-prototypes] void sun_pci_fd_dma_callback(struct ebus_dma_info *p, int event, void *cookie) ^ cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[5]: *** [/kisskb/src/scripts/Makefile.build:243: drivers/block/floppy.o] Error 1 make[5]: *** Waiting for unfinished jobs.... make[4]: *** [/kisskb/src/scripts/Makefile.build:481: drivers/block] Error 2 make[4]: *** Waiting for unfinished jobs.... /kisskb/src/drivers/sbus/char/bbc_envctrl.c:566:5: error: no previous prototype for 'bbc_envctrl_init' [-Werror=missing-prototypes] int bbc_envctrl_init(struct bbc_i2c_bus *bp) ^ /kisskb/src/drivers/sbus/char/bbc_envctrl.c:594:6: error: no previous prototype for 'bbc_envctrl_cleanup' [-Werror=missing-prototypes] void bbc_envctrl_cleanup(struct bbc_i2c_bus *bp) ^ cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[6]: *** [/kisskb/src/scripts/Makefile.build:243: drivers/sbus/char/bbc_envctrl.o] Error 1 make[6]: *** Waiting for unfinished jobs.... make[5]: *** [/kisskb/src/scripts/Makefile.build:481: drivers/sbus/char] Error 2 make[4]: *** [/kisskb/src/scripts/Makefile.build:481: drivers/sbus] Error 2 In file included from /kisskb/src/drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c:17:0: /kisskb/src/drivers/gpu/drm/msm/adreno/adreno_gen7_0_0_snapshot.h:924:19: error: 'gen7_0_0_external_core_regs' defined but not used [-Werror=unused-variable] static const u32 *gen7_0_0_external_core_regs[] = { ^ In file included from /kisskb/src/drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c:18:0: /kisskb/src/drivers/gpu/drm/msm/adreno/adreno_gen7_2_0_snapshot.h:748:19: error: 'gen7_2_0_external_core_regs' defined but not used [-Werror=unused-variable] static const u32 *gen7_2_0_external_core_regs[] = { ^ cc1: error: unrecognized command line option '-Wno-shift-negative-value' [-Werror] cc1: error: unrecognized command line option '-Wno-stringop-overflow' [-Werror] cc1: all warnings being treated as errors make[7]: *** [/kisskb/src/scripts/Makefile.build:243: drivers/gpu/drm/msm/adreno/a6xx_gpu_state.o] Error 1 make[7]: *** Waiting for unfinished jobs.... make[6]: *** [/kisskb/src/scripts/Makefile.build:481: drivers/gpu/drm/msm] Error 2 make[6]: *** Waiting for unfinished jobs.... make[5]: *** [/kisskb/src/scripts/Makefile.build:481: drivers/gpu/drm] Error 2 make[4]: *** [/kisskb/src/scripts/Makefile.build:481: drivers/gpu] Error 2 make[3]: *** [/kisskb/src/scripts/Makefile.build:481: drivers] Error 2 make[2]: *** [/kisskb/src/Makefile:1920: .] Error 2 make[1]: *** [/kisskb/src/Makefile:240: __sub-make] Error 2 make: *** [Makefile:240: __sub-make] Error 2 Command 'make -s -j 160 ARCH=sparc64 O=/kisskb/build/linus_allmodconfig_sparc64-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/sparc64-linux/bin/sparc64-linux- ' returned non-zero exit status 2. # rm -rf /kisskb/build/linus_allmodconfig_sparc64-gcc5 # Build took: 0:07:34.313712