clocksources: order of preference

Philipp Kohlbecher
2008-05-08T10:41:14Z

Why is the TSC preferred to the HPET as a clocksource for the x86
architecture?

"Understanding the Linux Kernel" states that the HPET is preferable to
the TSC due to its richer architecture. Up to version 2.6.17.14,
arch/i386/kernel/timers/timer.c also contained a comment to that effect
and accordingly ranked the HPET before the TSC.

This was changed when the new clocksource infrastructure was introduced
with version 2.6.18. (The HPET clocksource received a rating of 250; the
TSC, 300.)

Preferring the TSC leads to problems when it is unstable. While this can
be prevented by setting CONFIG_X86_TSC, certain distribution kernels
(striving for compatibility) don't, resulting in soft lockups.

Are there better reasons to prefer the TSC or may I submit a patch that
swaps the respective ratings?

Thanks for reading,
- Philipp Kohlbecher

Please CC me, I am not on the list.