# git rev-parse -q --verify 68b59730459e5d1fe4e0bbeb04ceb9df0f002270^{commit} 68b59730459e5d1fe4e0bbeb04ceb9df0f002270 already have revision, skipping fetch # git checkout -q -f -B kisskb 68b59730459e5d1fe4e0bbeb04ceb9df0f002270 # git clean -qxdf # < git log -1 # commit 68b59730459e5d1fe4e0bbeb04ceb9df0f002270 # Merge: f669aac34c5f 7a2fb5619cc1 # Author: Linus Torvalds # Date: Thu Jul 18 14:16:35 2024 -0700 # # Merge tag 'perf-tools-for-v6.11-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools # # Pull perf tools updates from Namhyung Kim: # "Build: # # - Build each directory as a library so that depedency check for the # python extension module can be automatic # # - Use pkg-config to check libtraceevent and libtracefs # # perf sched: # # - Add --task-name and --fuzzy-name options for `perf sched map` # # It focuses on selected tasks only by removing unrelated tasks in # the output. It matches the task comm with the given string and the # --fuzzy-name option allows the partial matching: # # $ sudo perf sched record -a sleep 1 # # $ sudo perf sched map --task-name kworker --fuzzy-name # . . . . - *A0 . . 481065.315131 secs A0 => kworker/5:2-i91:438521 # . . . . - *- . . 481065.315160 secs # *B0 . . . - . . . 481065.316435 secs B0 => kworker/0:0-i91:437860 # *- . . . . . . . 481065.316441 secs # . . . . . *A0 . . 481065.318703 secs # . . . . . *- . . 481065.318717 secs # . . *C0 . . . . . 481065.320544 secs C0 => kworker/u16:30-:430186 # . . *- . . . . . 481065.320555 secs # . . *D0 . . . . . 481065.328524 secs D0 => kworker/2:0-kdm:429654 # *B0 . D0 . - . . . 481065.328527 secs # *- . D0 . - . . . 481065.328535 secs # . . *- . . . . . 481065.328535 secs # # - Fix -r/--repeat option of perf sched replay # # The documentation said -1 will work as infinity but it didn't # accept the value. Update the code and document to use 0 instead # # - Fix perf sched timehist to account the delay time for preempted # tasks # # Perf event filtering: # # - perf top gained filtering support on regular events using BPF like # perf record. Previously it was able to use it for tracepoints only # # - The BPF filter now supports filtering by UID/GID. This should be # preferred than -u option as it's racy to scan /proc to check # tasks for the user and fails to open an event for the task if it's # already gone # # $ sudo perf top -e cycles --filter "uid == $(id -u)" # # perf report: # # - Skip dummy events in the group output by default. The --skip-empty # option controls display of empty events without samples. But perf # report can force display all events in a group # # In this case, auto-added a dummy event (for a system-wide record) # ends up in the output. Now it can skip those empty events even in # the group display mode # # To preserve the old behavior, run this: # # $ perf report --group --no-skip-empty # # perf stat: # # - Choose the most disaggregate option when multiple aggregation # options are given. It used to pick the last option in the command # line but it can be confusing and not consistent. Now it'll choose # the smallest unit # # For example, it'd aggregate the result per-core when the user gave # both --per-socket and --per-core options at the same time # # Internals: # # - Fix `perf bench` when some CPUs are offline # # - Fix handling of JIT symbol mappings to accept "/tmp/perf-${PID}.map # patterns only so that it can not be confused by other /tmp/perf-* # files # # - Many improvements and fixes for `perf test` # # Others: # # - Support some new instructions for Intel-PT # # - Fix syscall ID mapping in perf trace # # - Document AMD IBS PMU usages # # - Change `perf lock info` to show map and thread info by default # # Vendor JSON events: # # - Update Intel events and metrics # # - Add i.MX9[35] DDR metrics" # # * tag 'perf-tools-for-v6.11-2024-07-16' of git://git.kernel.org/pub/scm/linux/kernel/git/perf/perf-tools: (125 commits) # perf trace: Fix iteration of syscall ids in syscalltbl->entries # perf dso: Fix address sanitizer build # perf mem: Warn if memory events are not supported on all CPUs # perf arm-spe: Support multiple Arm SPE PMUs # perf build x86: Fix SC2034 error in syscalltbl.sh # perf record: Fix memset out-of-range error # perf sched map: Add --fuzzy-name option for fuzzy matching in task names # perf sched map: Add support for multiple task names using CSV # perf sched map: Add task-name option to filter the output map # perf build: Conditionally add feature check flags for libtrace{event,fs} # perf install: Don't propagate subdir to Documentation submake # perf vendor events arm64:: Add i.MX95 DDR Performance Monitor metrics # perf vendor events arm64:: Add i.MX93 DDR Performance Monitor metrics # perf dsos: When adding a dso into sorted dsos maintain the sort order # perf comm str: Avoid sort during insert # perf report: Calling available function for stats printing # perf intel-pt: Fix exclude_guest setting # perf intel-pt: Fix aux_watermark calculation for 64-bit size # perf sched replay: Fix -r/--repeat command line option for infinity # perf: pmus: Remove unneeded semicolon # ... # < /opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux-gcc --version # < /opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux-ld --version # < git log --format=%s --max-count=1 68b59730459e5d1fe4e0bbeb04ceb9df0f002270 # make -s -j 32 ARCH=um O=/kisskb/build/linus_allmodconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 allmodconfig # Added to kconfig CONFIG_STANDALONE=y # Added to kconfig CONFIG_KCOV=n # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig CONFIG_GCC_PLUGIN_CYC_COMPLEXITY=n # Added to kconfig CONFIG_GCC_PLUGIN_SANCOV=n # Added to kconfig CONFIG_GCC_PLUGIN_LATENT_ENTROPY=n # Added to kconfig CONFIG_GCC_PLUGIN_STRUCTLEAK=n # Added to kconfig CONFIG_GCC_PLUGIN_RANDSTRUCT=n # Added to kconfig CONFIG_UML_NET=n # Added to kconfig CONFIG_UML_NET_ETHERTAP=n # Added to kconfig CONFIG_UML_NET_TUNTAP=n # Added to kconfig CONFIG_UML_NET_SLIP=n # Added to kconfig CONFIG_UML_NET_DAEMON=n # Added to kconfig CONFIG_UML_NET_VDE=n # Added to kconfig CONFIG_UML_NET_MCAST=n # Added to kconfig CONFIG_UML_NET_PCAP=n # Added to kconfig CONFIG_UML_NET_SLIRP=n # Added to kconfig CONFIG_GCOV_KERNEL=n # Added to kconfig CONFIG_DEBUG_INFO_BTF=n # Added to kconfig CONFIG_BPF_PRELOAD=n # Added to kconfig CONFIG_SPI_STM32_QSPI=n # < make -s -j 32 ARCH=um O=/kisskb/build/linus_allmodconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 help # make -s -j 32 ARCH=um O=/kisskb/build/linus_allmodconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 olddefconfig .config:14288:warning: override: reassigning to symbol GCC_PLUGIN_LATENT_ENTROPY .config:14292:warning: override: reassigning to symbol UML_NET_ETHERTAP .config:14294:warning: override: reassigning to symbol UML_NET_SLIP .config:14299:warning: override: reassigning to symbol UML_NET_SLIRP # make -s -j 32 ARCH=um O=/kisskb/build/linus_allmodconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 /kisskb/src/lib/iomap.c:156:5: error: no previous prototype for ‘ioread64_lo_hi’ [-Werror=missing-prototypes] 156 | u64 ioread64_lo_hi(const void __iomem *addr) | ^~~~~~~~~~~~~~ /kisskb/src/lib/iomap.c:163:5: error: no previous prototype for ‘ioread64_hi_lo’ [-Werror=missing-prototypes] 163 | u64 ioread64_hi_lo(const void __iomem *addr) | ^~~~~~~~~~~~~~ /kisskb/src/lib/iomap.c:170:5: error: no previous prototype for ‘ioread64be_lo_hi’ [-Werror=missing-prototypes] 170 | u64 ioread64be_lo_hi(const void __iomem *addr) | ^~~~~~~~~~~~~~~~ /kisskb/src/lib/iomap.c:178:5: error: no previous prototype for ‘ioread64be_hi_lo’ [-Werror=missing-prototypes] 178 | u64 ioread64be_hi_lo(const void __iomem *addr) | ^~~~~~~~~~~~~~~~ /kisskb/src/lib/iomap.c:264:6: error: no previous prototype for ‘iowrite64_lo_hi’ [-Werror=missing-prototypes] 264 | void iowrite64_lo_hi(u64 val, void __iomem *addr) | ^~~~~~~~~~~~~~~ /kisskb/src/lib/iomap.c:272:6: error: no previous prototype for ‘iowrite64_hi_lo’ [-Werror=missing-prototypes] 272 | void iowrite64_hi_lo(u64 val, void __iomem *addr) | ^~~~~~~~~~~~~~~ /kisskb/src/lib/iomap.c:280:6: error: no previous prototype for ‘iowrite64be_lo_hi’ [-Werror=missing-prototypes] 280 | void iowrite64be_lo_hi(u64 val, void __iomem *addr) | ^~~~~~~~~~~~~~~~~ /kisskb/src/lib/iomap.c:288:6: error: no previous prototype for ‘iowrite64be_hi_lo’ [-Werror=missing-prototypes] 288 | void iowrite64be_hi_lo(u64 val, void __iomem *addr) | ^~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors make[4]: *** [/kisskb/src/scripts/Makefile.build:244: lib/iomap.o] Error 1 make[4]: *** Waiting for unfinished jobs.... make[3]: *** [/kisskb/src/scripts/Makefile.build:485: lib] Error 2 make[3]: *** Waiting for unfinished jobs.... make[2]: *** [/kisskb/src/Makefile:1934: .] Error 2 make[1]: *** [/kisskb/src/Makefile:240: __sub-make] Error 2 make: *** [Makefile:240: __sub-make] Error 2 Command 'make -s -j 32 ARCH=um O=/kisskb/build/linus_allmodconfig_um-x86_64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/x86-64--glibc--bleeding-edge-2022.08-1/bin/x86_64-linux- SUBARCH=x86_64 ' returned non-zero exit status 2. # rm -rf /kisskb/build/linus_allmodconfig_um-x86_64-gcc12 # Build took: 0:18:52.000178