get_cmos_time() takes up to a second on boot

From: Tim Bird
Date: Fri May 07 2004 - 19:36:25 EST


In Linux 2.4.20, the routine get_cmos_time() in
arch/i386/kernel/time.c takes up to a second to run
during a boot on an x86 desktop.

It looks like this is because of the first 'for' loop where
it synchronizes with the edge of the RTC clock (and where
the comment reads "may take up to 1 second...")

In Linux 2.6.5, this same code appears in
mach_get_cmos_time() in
include/asm-i386/mach-default/mach_time.c
(but I haven't measured it on 2.6.5 yet).

What is the downside of disabling this
synchronization with the clock edge?

1 second of variability is unnacceptable
when you're requirement is to boot in
.5 seconds. :)

Would it be bad to disable this synchronization
completely? How about just during boot?

=============================
Tim Bird
Chair, Bootup Time Working Group, CE Linux Forum
Senior Staff Engineer, Sony Electronics
=============================

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/