The 2.5.59 version of this patch is now available onsourceforge (see signature).

Changes since last time:Kconfig comment clean up by Randy Dunlap. Changes to the CPU frequency code in the hrtimer_tsc area.John Stultz's changes to make fast_gettimeoffset_quotient astatic are included.Make file changes in arch/i386/kernel/time/Makefile------------Changes to the .../arch/i386/kernel/time/MakefileMoved the disable_tsc var to time.c so it can be shared.Picked up the do_timer.h changes in two addional sub archs.

CONFIG dependency added to not turn on stuff only neededwhen CONFIG_HIGH_RES = y.----------

This patch, in conjunction with the "core" high-res-timerspatch implements high resolution timers on the i386platforms. The high-res-timers use the periodic interruptto "remind" the system to look at the clock. The clockshould be relatively high resolution (1 micro second orbetter). This patch allows configuring of three possibleclocks, the TSC, the ACPI pm timer, or the Programmableinterrupt timer (PIT). Most of the changes in this patchare in the arch/i386/kernel/timer/* code.

This patch uses (if available) the APIC timer(s) to generate1/HZ ticks and sub 1/HZ ticks as needed. The PIT stillinterrupts, but if the APIC timer is available, just causesthe wall clock update. No attempt is made to make thisinterrupt happen on jiffie boundaries, however, the APICtimers are disciplined to expire on 1/HZ boundaries to giveconsistent timer latencies WRT to the system time.

With this patch applied and enabled (at config time in theprocessor feature section), the system clock will be thespecified clock. The PIT is not used to keep track of time,but only to remind the system to look at the clock. Subjiffies are kept and available for code that knows how touse them.