[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250128063301.3879317-4-jstultz@google.com>
Date: Mon, 27 Jan 2025 22:32:55 -0800
From: John Stultz <jstultz@...gle.com>
To: LKML <linux-kernel@...r.kernel.org>
Cc: John Stultz <jstultz@...gle.com>, Anna-Maria Behnsen <anna-maria@...utronix.de>,
Frederic Weisbecker <frederic@...nel.org>, Ingo Molnar <mingo@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>, Peter Zijlstra <peterz@...radead.org>,
Juri Lelli <juri.lelli@...hat.com>, Vincent Guittot <vincent.guittot@...aro.org>,
Dietmar Eggemann <dietmar.eggemann@....com>, Steven Rostedt <rostedt@...dmis.org>,
Ben Segall <bsegall@...gle.com>, Mel Gorman <mgorman@...e.de>,
Valentin Schneider <vschneid@...hat.com>, Stephen Boyd <sboyd@...nel.org>,
Yury Norov <yury.norov@...il.com>, Bitao Hu <yaoma@...ux.alibaba.com>,
Andrew Morton <akpm@...ux-foundation.org>, kernel-team@...roid.com
Subject: [RFC][PATCH 3/3] Kconfig: Add CONFIG_DYN_HZ_DEFAULT to specify the
default dynhz= boot option value
Allow a default dynhz= boot option value to be specified via config.
Cc: Anna-Maria Behnsen <anna-maria@...utronix.de>
Cc: Frederic Weisbecker <frederic@...nel.org>
Cc: Ingo Molnar <mingo@...nel.org>
Cc: Thomas Gleixner <tglx@...utronix.de>
Cc: Peter Zijlstra <peterz@...radead.org>
Cc: Juri Lelli <juri.lelli@...hat.com>
Cc: Vincent Guittot <vincent.guittot@...aro.org>
Cc: Dietmar Eggemann <dietmar.eggemann@....com>
Cc: Steven Rostedt <rostedt@...dmis.org>
Cc: Ben Segall <bsegall@...gle.com>
Cc: Mel Gorman <mgorman@...e.de>
Cc: Valentin Schneider <vschneid@...hat.com>
Cc: Stephen Boyd <sboyd@...nel.org>
Cc: Yury Norov <yury.norov@...il.com>
Cc: Bitao Hu <yaoma@...ux.alibaba.com>
Cc: Andrew Morton <akpm@...ux-foundation.org>
Cc: kernel-team@...roid.com
Signed-off-by: John Stultz <jstultz@...gle.com>
---
kernel/Kconfig.hz | 10 ++++++++++
kernel/time/tick-common.c | 2 +-
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/kernel/Kconfig.hz b/kernel/Kconfig.hz
index 76714317674c5..27ad1400ad64e 100644
--- a/kernel/Kconfig.hz
+++ b/kernel/Kconfig.hz
@@ -64,5 +64,15 @@ config DYN_HZ
build time configured HZ value.
If you are unsure, say no.
+config DYN_HZ_DEFAULT
+ int "Default DynHZ value (valid range: 100-CONFIG_HZ)"
+ depends on DYN_HZ
+ default HZ
+ range 100 HZ
+ help
+ Default value for dynhz. This allows ticks to be configured
+ to arrive at slower than HZ rates. This is useful when you
+ want to allow boot-time configurable tick rates.
+
config SCHED_HRTICK
def_bool HIGH_RES_TIMERS
diff --git a/kernel/time/tick-common.c b/kernel/time/tick-common.c
index 75fd9dadb8273..46463bfb75d3d 100644
--- a/kernel/time/tick-common.c
+++ b/kernel/time/tick-common.c
@@ -81,7 +81,7 @@ int tick_is_oneshot_available(void)
}
#ifdef CONFIG_DYN_HZ
-long long dyn_tick_nsec = TICK_NSEC;
+long long dyn_tick_nsec = TICK_NSEC * HZ / CONFIG_DYN_HZ_DEFAULT;
static int __init set_dyn_hz(char *str)
{
--
2.48.1.262.g85cc9f2d1e-goog
Powered by blists - more mailing lists