Messages in this thread Patch in this message | | | Subject | [PATCH] Time: Delay clocksource selection until later in boot | From | john stultz <> | Date | Tue, 17 Jan 2006 11:16:05 -0800 |
| |
Delay installing new clocksources until later in boot. This avoids some of the clocksource churn that can occur at boot, possibly allowing the system to run for a brief time with a bad clocksource.
This patch resolves the boot time stalls seen by Mattia Dongili.
thanks -john
Signed-off-by: John Stultz <johnstul@us.ibm.com>
diff --git a/kernel/time/clocksource.c b/kernel/time/clocksource.c --- a/kernel/time/clocksource.c +++ b/kernel/time/clocksource.c @@ -51,13 +51,27 @@ static LIST_HEAD(clocksource_list); static DEFINE_SPINLOCK(clocksource_lock); static char override_name[32]; +static int finished_booting; + +/* clocksource_done_booting - Called near the end of bootup + * + * Hack to avoid lots of clocksource churn at boot time + */ +static int clocksource_done_booting(void) +{ + finished_booting = 1; + return 0; +} + +late_initcall(clocksource_done_booting); + /** * get_next_clocksource - Returns the selected clocksource */ struct clocksource *get_next_clocksource(void) { spin_lock(&clocksource_lock); - if (next_clocksource) { + if (next_clocksource && finished_booting) { curr_clocksource = next_clocksource; next_clocksource = NULL; }
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |