The following commit has been merged into the timers/core branch of tip: Commit-ID: a184d9835a0a689261ea6a4a8dbc18173a031b77 Gitweb: https://git.kernel.org/tip/a184d9835a0a689261ea6a4a8dbc18173a031b77 Author: Arnd Bergmann <arnd@xxxxxxxx> AuthorDate: Wed, 28 Feb 2024 13:38:41 +01:00 Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx> CommitterDate: Thu, 29 Feb 2024 17:41:29 +01:00 tick/sched: Fix build failure for CONFIG_NO_HZ_COMMON=n In configurations with CONFIG_TICK_ONESHOT but no CONFIG_NO_HZ or CONFIG_HIGH_RES_TIMERS, tick_sched_timer_dying() is stubbed out, but still defined as a global function as well: kernel/time/tick-sched.c:1599:6: error: redefinition of 'tick_sched_timer_dying' 1599 | void tick_sched_timer_dying(int cpu) | ^ kernel/time/tick-sched.h:111:20: note: previous definition is here 111 | static inline void tick_sched_timer_dying(int cpu) { } | ^ This configuration only appears with ARM CONFIG_ARCH_BCM_MOBILE, which should not actually select CONFIG_TICK_ONESHOT. Adjust the #ifdef for the stub to match the condition for building the tick-sched.c file for consistency with the definition and to avoid the build regression. Fixes: 3aedb7fcd88a ("tick/sched: Remove useless oneshot ifdeffery") Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx> Link: https://lore.kernel.org/r/20240228123850.3499024-1-arnd@xxxxxxxxxx --- kernel/time/tick-sched.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/time/tick-sched.h b/kernel/time/tick-sched.h index 58d8d1c..e11c4dc 100644 --- a/kernel/time/tick-sched.h +++ b/kernel/time/tick-sched.h @@ -105,7 +105,7 @@ struct tick_sched { extern struct tick_sched *tick_get_tick_sched(int cpu); extern void tick_setup_sched_timer(bool hrtimer); -#if defined CONFIG_NO_HZ_COMMON || defined CONFIG_HIGH_RES_TIMERS +#if defined CONFIG_TICK_ONESHOT extern void tick_sched_timer_dying(int cpu); #else static inline void tick_sched_timer_dying(int cpu) { }