public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
* [Linux-ia64] fix for slow running time-of-day
@ 2000-09-23  6:25 David Mosberger
  0 siblings, 0 replies; only message in thread
From: David Mosberger @ 2000-09-23  6:25 UTC (permalink / raw)
  To: linux-ia64

This patch fixes the time drift problem that has been plaguing us for
a while.  It turns out that without it, time was running behind by
about 0.3%.  Doesn't sound like a lot, but amounts to about 5 min/day.
Linus already accepted this patch for test9-pre6.

Enjoy,

	--david

--- include/linux/timex.h~	Mon Jul 31 14:01:22 2000
+++ include/linux/timex.h	Thu Sep 21 23:45:26 2000
@@ -51,6 +51,8 @@
 #ifndef _LINUX_TIMEX_H
 #define _LINUX_TIMEX_H
 
+#include <asm/param.h>
+
 /*
  * The following defines establish the engineering parameters of the PLL
  * model. The HZ variable establishes the timer interrupt frequency, 100 Hz
@@ -58,10 +60,20 @@
  * OSF/1 kernel. The SHIFT_HZ define expresses the same value as the
  * nearest power of two in order to avoid hardware multiply operations.
  */
-#ifdef __alpha__
-# define SHIFT_HZ 10		/* log2(HZ) */
+#if HZ >= 24 && HZ < 48
+# define SHIFT_HZ	5
+#elif HZ >= 48 && HZ < 96
+# define SHIFT_HZ	6
+#elif HZ >= 96 && HZ < 192
+# define SHIFT_HZ	7
+#elif HZ >= 192 && HZ < 384
+# define SHIFT_HZ	8
+#elif HZ >= 384 && HZ < 768
+# define SHIFT_HZ	9
+#elif HZ >= 768 && HZ < 1536
+# define SHIFT_HZ	10
 #else
-# define SHIFT_HZ 7		/* log2(HZ) */
+# error You lose.
 #endif
 
 /*


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2000-09-23  6:25 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-09-23  6:25 [Linux-ia64] fix for slow running time-of-day David Mosberger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox