All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] tick: Include ktime.h and jiffies.h in linux/tick.h
@ 2026-07-22  6:21 Karl Mehltretter
  2026-08-08 20:27 ` Karl Mehltretter
  2026-08-10 14:43 ` [tip: timers/urgent] " tip-bot2 for Karl Mehltretter
  0 siblings, 2 replies; 3+ messages in thread
From: Karl Mehltretter @ 2026-07-22  6:21 UTC (permalink / raw)
  To: Anna-Maria Behnsen, Frederic Weisbecker, Ingo Molnar,
	Thomas Gleixner
  Cc: Karl Mehltretter, linux-kernel

The !CONFIG_NO_HZ_COMMON stubs use ktime_add(), ktime_get() and
TICK_NSEC, but tick.h includes neither <linux/ktime.h> nor
<linux/jiffies.h>. Most configurations build only because those
declarations arrive transitively.

Commit 6440966067dc ("cpuset: Remove cpuset_cpu_is_isolated()") removed
<linux/cpuset.h> from <linux/sched/isolation.h>. The <linux/cpuset.h>
include chain had been satisfying these declarations before
<linux/tick.h> was parsed. Commit 8aa76aa41589 ("ring-buffer: Use a
housekeeping CPU to wake up waiters") then added
<linux/sched/isolation.h> to ring_buffer.c ahead of any header which
provides them. Neither change is wrong on its own: the failure requires
both and appeared in v7.0.

ARM rpc_defconfig + CONFIG_FUNCTION_TRACER fails to build:

  $ make ARCH=arm rpc_defconfig
  $ ./scripts/config -e FTRACE -e FUNCTION_TRACER
  $ make ARCH=arm olddefconfig
  $ make ARCH=arm kernel/trace/ring_buffer.o
  In file included from include/linux/sched/isolation.h:6,
                   from kernel/trace/ring_buffer.c:8:
  include/linux/tick.h: In function 'tick_nohz_get_next_hrtimer':
  include/linux/tick.h:156:9: error: implicit declaration of function
      'ktime_add'; did you mean 'size_add'?
  include/linux/tick.h:156:19: error: implicit declaration of function
      'ktime_get'; did you mean 'time_init'?
  include/linux/tick.h:156:32: error: 'TICK_NSEC' undeclared

Include the headers the file actually uses.

Fixes: 8aa76aa41589 ("ring-buffer: Use a housekeeping CPU to wake up waiters")
Assisted-by: Codex:gpt-5.6-sol
Signed-off-by: Karl Mehltretter <kmehltretter@gmail.com>
---
 include/linux/tick.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/linux/tick.h b/include/linux/tick.h
index 1cf4651f09ad..47750ccd1314 100644
--- a/include/linux/tick.h
+++ b/include/linux/tick.h
@@ -7,6 +7,8 @@
 
 #include <linux/clockchips.h>
 #include <linux/irqflags.h>
+#include <linux/jiffies.h>
+#include <linux/ktime.h>
 #include <linux/percpu.h>
 #include <linux/context_tracking_state.h>
 #include <linux/cpumask.h>
-- 
2.53.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-08-10 14:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-22  6:21 [PATCH] tick: Include ktime.h and jiffies.h in linux/tick.h Karl Mehltretter
2026-08-08 20:27 ` Karl Mehltretter
2026-08-10 14:43 ` [tip: timers/urgent] " tip-bot2 for Karl Mehltretter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.