Buildresult: linus/sh-allnoconfig/sh4-gcc13 built on Mar 12, 12:35
kisskb
Revisions
|
Branches
|
Compilers
|
Configs
|
Build Results
|
Build Failures
|
Status:
OK
Date/Time:
Mar 12, 12:35
Duration:
0:00:48.413369
Builder:
blade4b
Revision:
Merge tag 'timers-core-2024-03-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip (
d08c407f715f651e7ea40b3a037be46dd2b11e4c)
Target:
linus/sh-allnoconfig/sh4-gcc13
Branch:
linus
Compiler:
sh4-gcc13
(sh4-linux-gcc (GCC) 13.1.0 / GNU ld (GNU Binutils) 2.40)
Config:
allnoconfig
(
download
)
Log:
Download original
Possible warnings (14)
<stdin>:1519:2: warning: #warning syscall clone3 not implemented [-Wcpp] arch/sh/mm/nommu.c:76:13: warning: no previous prototype for 'kmap_coherent_init' [-Wmissing-prototypes] arch/sh/mm/nommu.c:80:7: warning: no previous prototype for 'kmap_coherent' [-Wmissing-prototypes] arch/sh/mm/nommu.c:86:6: warning: no previous prototype for 'kunmap_coherent' [-Wmissing-prototypes] arch/sh/mm/cache-sh2.c:85:13: warning: no previous prototype for 'sh2_cache_init' [-Wmissing-prototypes] arch/sh/kernel/cpu/init.c:99:29: warning: no previous prototype for 'l2_cache_init' [-Wmissing-prototypes] arch/sh/kernel/return_address.c:49:7: warning: no previous prototype for 'return_address' [-Wmissing-prototypes] arch/sh/kernel/sys_sh.c:58:16: warning: no previous prototype for 'sys_cacheflush' [-Wmissing-prototypes] arch/sh/kernel/traps_32.c:735:6: warning: no previous prototype for 'per_cpu_trap_init' [-Wmissing-prototypes] arch/sh/kernel/hw_breakpoint.c:135:5: warning: no previous prototype for 'arch_bp_generic_fields' [-Wmissing-prototypes] arch/sh/boot/compressed/cache.c:2:5: warning: no previous prototype for 'cache_control' [-Wmissing-prototypes] arch/sh/boot/compressed/misc.c:115:6: warning: no previous prototype for 'ftrace_stub' [-Wmissing-prototypes] arch/sh/boot/compressed/misc.c:118:6: warning: no previous prototype for 'arch_ftrace_ops_list_func' [-Wmissing-prototypes] arch/sh/boot/compressed/misc.c:128:6: warning: no previous prototype for 'decompress_kernel' [-Wmissing-prototypes]
Full Log
# git rev-parse -q --verify d08c407f715f651e7ea40b3a037be46dd2b11e4c^{commit} d08c407f715f651e7ea40b3a037be46dd2b11e4c already have revision, skipping fetch # git checkout -q -f -B kisskb d08c407f715f651e7ea40b3a037be46dd2b11e4c # git clean -qxdf # < git log -1 # commit d08c407f715f651e7ea40b3a037be46dd2b11e4c # Merge: 80a76c60e5f6 8ca1836769d7 # Author: Linus Torvalds <torvalds@linux-foundation.org> # Date: Mon Mar 11 14:38:26 2024 -0700 # # Merge tag 'timers-core-2024-03-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip # # Pull timer updates from Thomas Gleixner: # "A large set of updates and features for timers and timekeeping: # # - The hierarchical timer pull model # # When timer wheel timers are armed they are placed into the timer # wheel of a CPU which is likely to be busy at the time of expiry. # This is done to avoid wakeups on potentially idle CPUs. # # This is wrong in several aspects: # # 1) The heuristics to select the target CPU are wrong by # definition as the chance to get the prediction right is # close to zero. # # 2) Due to #1 it is possible that timers are accumulated on # a single target CPU # # 3) The required computation in the enqueue path is just overhead # for dubious value especially under the consideration that the # vast majority of timer wheel timers are either canceled or # rearmed before they expire. # # The timer pull model avoids the above by removing the target # computation on enqueue and queueing timers always on the CPU on # which they get armed. # # This is achieved by having separate wheels for CPU pinned timers # and global timers which do not care about where they expire. # # As long as a CPU is busy it handles both the pinned and the global # timers which are queued on the CPU local timer wheels. # # When a CPU goes idle it evaluates its own timer wheels: # # - If the first expiring timer is a pinned timer, then the global # timers can be ignored as the CPU will wake up before they # expire. # # - If the first expiring timer is a global timer, then the expiry # time is propagated into the timer pull hierarchy and the CPU # makes sure to wake up for the first pinned timer. # # The timer pull hierarchy organizes CPUs in groups of eight at the # lowest level and at the next levels groups of eight groups up to # the point where no further aggregation of groups is required, i.e. # the number of levels is log8(NR_CPUS). The magic number of eight # has been established by experimention, but can be adjusted if # needed. # # In each group one busy CPU acts as the migrator. It's only one CPU # to avoid lock contention on remote timer wheels. # # The migrator CPU checks in its own timer wheel handling whether # there are other CPUs in the group which have gone idle and have # global timers to expire. If there are global timers to expire, the # migrator locks the remote CPU timer wheel and handles the expiry. # # Depending on the group level in the hierarchy this handling can # require to walk the hierarchy downwards to the CPU level. # # Special care is taken when the last CPU goes idle. At this point # the CPU is the systemwide migrator at the top of the hierarchy and # it therefore cannot delegate to the hierarchy. It needs to arm its # own timer device to expire either at the first expiring timer in # the hierarchy or at the first CPU local timer, which ever expires # first. # # This completely removes the overhead from the enqueue path, which # is e.g. for networking a true hotpath and trades it for a slightly # more complex idle path. # # This has been in development for a couple of years and the final # series has been extensively tested by various teams from silicon # vendors and ran through extensive CI. # # There have been slight performance improvements observed on network # centric workloads and an Intel team confirmed that this allows them # to power down a die completely on a mult-die socket for the first # time in a mostly idle scenario. # # There is only one outstanding ~1.5% regression on a specific # overloaded netperf test which is currently investigated, but the # rest is either positive or neutral performance wise and positive on # the power management side. # # - Fixes for the timekeeping interpolation code for cross-timestamps: # # cross-timestamps are used for PTP to get snapshots from hardware # timers and interpolated them back to clock MONOTONIC. The changes # address a few corner cases in the interpolation code which got the # math and logic wrong. # # - Simplifcation of the clocksource watchdog retry logic to # automatically adjust to handle larger systems correctly instead of # having more incomprehensible command line parameters. # # - Treewide consolidation of the VDSO data structures. # # - The usual small improvements and cleanups all over the place" # # * tag 'timers-core-2024-03-10' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (62 commits) # timer/migration: Fix quick check reporting late expiry # tick/sched: Fix build failure for CONFIG_NO_HZ_COMMON=n # vdso/datapage: Quick fix - use asm/page-def.h for ARM64 # timers: Assert no next dyntick timer look-up while CPU is offline # tick: Assume timekeeping is correctly handed over upon last offline idle call # tick: Shut down low-res tick from dying CPU # tick: Split nohz and highres features from nohz_mode # tick: Move individual bit features to debuggable mask accesses # tick: Move got_idle_tick away from common flags # tick: Assume the tick can't be stopped in NOHZ_MODE_INACTIVE mode # tick: Move broadcast cancellation up to CPUHP_AP_TICK_DYING # tick: Move tick cancellation up to CPUHP_AP_TICK_DYING # tick: Start centralizing tick related CPU hotplug operations # tick/sched: Don't clear ts::next_tick again in can_stop_idle_tick() # tick/sched: Rename tick_nohz_stop_sched_tick() to tick_nohz_full_stop_tick() # tick: Use IS_ENABLED() whenever possible # tick/sched: Remove useless oneshot ifdeffery # tick/nohz: Remove duplicate between lowres and highres handlers # tick/nohz: Remove duplicate between tick_nohz_switch_to_nohz() and tick_setup_sched_timer() # hrtimer: Select housekeeping CPU during migration # ... # < /opt/cross/kisskb/korg/gcc-13.1.0-nolibc/sh4-linux/bin/sh4-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-13.1.0-nolibc/sh4-linux/bin/sh4-linux-ld --version # < git log --format=%s --max-count=1 d08c407f715f651e7ea40b3a037be46dd2b11e4c # make -s -j 24 ARCH=sh O=/kisskb/build/linus_allnoconfig_sh4-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/sh4-linux/bin/sh4-linux- allnoconfig # < make -s -j 24 ARCH=sh O=/kisskb/build/linus_allnoconfig_sh4-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/sh4-linux/bin/sh4-linux- help # make -s -j 24 ARCH=sh O=/kisskb/build/linus_allnoconfig_sh4-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/sh4-linux/bin/sh4-linux- olddefconfig # make -s -j 24 ARCH=sh O=/kisskb/build/linus_allnoconfig_sh4-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/sh4-linux/bin/sh4-linux- Generating include/generated/machtypes.h <stdin>:1519:2: warning: #warning syscall clone3 not implemented [-Wcpp] /kisskb/src/arch/sh/mm/nommu.c:76:13: warning: no previous prototype for 'kmap_coherent_init' [-Wmissing-prototypes] 76 | void __init kmap_coherent_init(void) | ^~~~~~~~~~~~~~~~~~ /kisskb/src/arch/sh/mm/nommu.c:80:7: warning: no previous prototype for 'kmap_coherent' [-Wmissing-prototypes] 80 | void *kmap_coherent(struct page *page, unsigned long addr) | ^~~~~~~~~~~~~ /kisskb/src/arch/sh/mm/nommu.c:86:6: warning: no previous prototype for 'kunmap_coherent' [-Wmissing-prototypes] 86 | void kunmap_coherent(void *kvaddr) | ^~~~~~~~~~~~~~~ /kisskb/src/arch/sh/mm/cache-sh2.c:85:13: warning: no previous prototype for 'sh2_cache_init' [-Wmissing-prototypes] 85 | void __init sh2_cache_init(void) | ^~~~~~~~~~~~~~ /kisskb/src/arch/sh/kernel/cpu/init.c:99:29: warning: no previous prototype for 'l2_cache_init' [-Wmissing-prototypes] 99 | void __attribute__ ((weak)) l2_cache_init(void) | ^~~~~~~~~~~~~ /kisskb/src/arch/sh/kernel/return_address.c:49:7: warning: no previous prototype for 'return_address' [-Wmissing-prototypes] 49 | void *return_address(unsigned int depth) | ^~~~~~~~~~~~~~ /kisskb/src/arch/sh/kernel/sys_sh.c:58:16: warning: no previous prototype for 'sys_cacheflush' [-Wmissing-prototypes] 58 | asmlinkage int sys_cacheflush(unsigned long addr, unsigned long len, int op) | ^~~~~~~~~~~~~~ /kisskb/src/arch/sh/kernel/traps_32.c:735:6: warning: no previous prototype for 'per_cpu_trap_init' [-Wmissing-prototypes] 735 | void per_cpu_trap_init(void) | ^~~~~~~~~~~~~~~~~ /kisskb/src/arch/sh/kernel/hw_breakpoint.c:135:5: warning: no previous prototype for 'arch_bp_generic_fields' [-Wmissing-prototypes] 135 | int arch_bp_generic_fields(int sh_len, int sh_type, | ^~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/sh/boot/compressed/cache.c:2:5: warning: no previous prototype for 'cache_control' [-Wmissing-prototypes] 2 | int cache_control(unsigned int command) | ^~~~~~~~~~~~~ /kisskb/src/arch/sh/boot/compressed/misc.c:115:6: warning: no previous prototype for 'ftrace_stub' [-Wmissing-prototypes] 115 | void ftrace_stub(void) | ^~~~~~~~~~~ /kisskb/src/arch/sh/boot/compressed/misc.c:118:6: warning: no previous prototype for 'arch_ftrace_ops_list_func' [-Wmissing-prototypes] 118 | void arch_ftrace_ops_list_func(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/arch/sh/boot/compressed/misc.c:128:6: warning: no previous prototype for 'decompress_kernel' [-Wmissing-prototypes] 128 | void decompress_kernel(void) | ^~~~~~~~~~~~~~~~~ Kernel: arch/sh/boot/zImage is ready Completed OK # rm -rf /kisskb/build/linus_allnoconfig_sh4-gcc13 # Build took: 0:00:48.413369
© Michael Ellerman 2006-2018.