linux/include
john stultz 6bb74df481 [PATCH] clocksource init adjustments (fix bug #7426)
This patch resolves the issue found here:
http://bugme.osdl.org/show_bug.cgi?id=7426

The basic summary is:
Currently we register most of i386/x86_64 clocksources at module_init
time. Then we enable clocksource selection at late_initcall time. This
causes some problems for drivers that use gettimeofday for init
calibration routines (specifically the es1968 driver in this case),
where durring module_init, the only clocksource available is the low-res
jiffies clocksource. This may cause slight calibration errors, due to
the small sampling time used.

It should be noted that drivers that require fine grained time may not
function on architectures that do not have better then jiffies
resolution timekeeping (there are a few). However, this does not
discount the reasonable need for such fine-grained timekeeping at init
time.

Thus the solution here is to register clocksources earlier (ideally when
the hardware is being initialized), and then we enable clocksource
selection at fs_initcall (before device_initcall).

This patch should probably get some testing time in -mm, since
clocksource selection is one of the most important issues for correct
timekeeping, and I've only been able to test this on a few of my own
boxes.

Signed-off-by: John Stultz <johnstul@us.ibm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-03-05 07:57:53 -08:00
..
acpi Pull bugzilla-7887 into release branch 2007-02-16 22:11:57 -05:00
asm-alpha [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
asm-arm [PATCH] gpio_keys driver shouldn't be ARM-specific 2007-03-05 07:57:51 -08:00
asm-arm26 Storage class should be before const qualifier 2007-02-17 20:11:19 +01:00
asm-avr32 Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm 2007-02-19 13:18:39 -08:00
asm-cris [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
asm-frv [PATCH] FRV: Add some missng lazy MMU hooks for NOMMU mode 2007-03-01 14:53:36 -08:00
asm-generic [PATCH] i386: paravirt CPU hypercall batching mode 2007-02-13 13:26:21 +01:00
asm-h8300 [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
asm-i386 [PATCH] vmi: apic ops 2007-03-05 07:57:52 -08:00
asm-ia64 [PATCH] sched: remove SMT nice 2007-03-05 07:57:51 -08:00
asm-m32r [PATCH] fix sparse warnings from {asm,net}/checksum.h 2007-02-11 10:51:31 -08:00
asm-m68k [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
asm-m68knommu [PATCH] m68knommu: removed include of system.h from bitops 2007-02-09 10:45:33 -08:00
asm-mips [PATCH] sched: remove SMT nice 2007-03-05 07:57:51 -08:00
asm-parisc Merge master.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6 2007-02-26 12:48:06 -08:00
asm-powerpc [PATCH] sched: remove SMT nice 2007-03-05 07:57:51 -08:00
asm-ppc [POWERPC] ppc: Add support for AMCC Taishan 440GX eval board 2007-02-13 15:35:52 +11:00
asm-s390 [S390] add atomic64_xchg to s390 2007-02-21 10:55:59 +01:00
asm-sh sh: rts7751r2d board updates. 2007-02-15 18:20:52 +09:00
asm-sh64 [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
asm-sparc [SPARC]: Provide 'get_property()' alias for of_get_property(). 2007-03-02 15:22:53 -08:00
asm-sparc64 [SPARC]: Provide 'get_property()' alias for of_get_property(). 2007-03-02 15:22:53 -08:00
asm-um [PATCH] uml: pte_mkread fix 2007-03-01 14:53:38 -08:00
asm-v850 [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
asm-x86_64 [PATCH] clocksource init adjustments (fix bug #7426) 2007-03-05 07:57:53 -08:00
asm-xtensa [PATCH] consolidate line discipline number definitions 2007-02-11 10:51:26 -08:00
crypto [CRYPTO] api: Allow multiple frontends per backend 2007-02-07 09:21:01 +11:00
keys
linux [PATCH] Page migration: Fix vma flag checking 2007-03-05 07:57:51 -08:00
math-emu
media V4L/DVB (5271): Add VIDIOC_TRY_ENCODER_CMD and VIDIOC_ENCODER_CMD ioctls. 2007-03-01 13:09:46 -02:00
mtd [MTD] remove unused ecctype,eccsize fields from struct mtd_info 2007-02-09 15:27:12 +00:00
net [NET]: Fix bugs in "Whether sock accept queue is full" checking 2007-03-02 20:37:33 -08:00
pcmcia serial: Add PCMCIA IDs for Quatech DSP-100 dual RS232 adapter. 2007-02-16 15:19:16 -08:00
rdma RDMA/cma: Add multicast communication support 2007-02-16 14:29:07 -08:00
rxrpc
scsi Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 2007-02-19 13:32:28 -08:00
sound [ALSA] version 1.0.14rc2 2007-02-14 08:42:20 +01:00
video [PATCH] Video: fb, add true ref_count atomicity 2007-02-12 09:48:42 -08:00
Kbuild