--- ../linux-2.6.12_src/arch/i386/Kconfig	2005-06-17 20:48:29.000000000 +0100
+++ arch/i386/Kconfig	2005-07-12 12:57:06.000000000 +0100
@@ -349,7 +349,8 @@
 
 endif
 
+source "kernel/Kconfig.hz"
+
 #
 # Define implied options from the CPU selection here
 #
--- ../linux-2.6.12_src/arch/x86_64/Kconfig	2005-06-17 20:48:29.000000000 +0100
@@ -89,7 +88,9 @@
 
 endchoice
 
+source "kernel/Kconfig.hz"
+
 #
 # Define implied options from the CPU selection here
 #
--- ../linux-2.6.12_src/include/asm-i386/param.h	2005-06-17 20:48:29.000000000 +0100
+++ include/asm-i386/param.h	2005-07-12 12:45:00.000000000 +0100
@@ -1,11 +1,13 @@
+#include <linux/config.h>
+
 #ifndef _ASMi386_PARAM_H
 #define _ASMi386_PARAM_H
 
 #ifdef __KERNEL__
-# define HZ		1000		/* Internal kernel timer frequency */
-# define USER_HZ	100		/* .. some user interfaces are in "ticks" */
-# define CLOCKS_PER_SEC		(USER_HZ)	/* like times() */
+# define HZ		CONFIG_HZ	/* Internal kernel timer frequency */
+# define USER_HZ	100		/* some user APIs are in "ticks" */
+# define CLOCKS_PER_SEC	(USER_HZ)	/* like times() */
 #endif
 
 #ifndef HZ
--- ../linux-2.6.12_src/include/asm-x86_64/param.h	2005-06-17 20:48:29.000000000 +0100
+++ include/asm-x86_64/param.h	2005-07-12 12:52:53.000000000 +0100
@@ -1,11 +1,13 @@
+#include <linux/config.h>
+
 #ifndef _ASMx86_64_PARAM_H
 #define _ASMx86_64_PARAM_H
 
 #ifdef __KERNEL__
-# define HZ            1000            /* Internal kernel timer frequency */
-# define USER_HZ       100          /* .. some user interfaces are in "ticks */
-#define CLOCKS_PER_SEC        (USER_HZ)       /* like times() */
+# define HZ		CONFIG_HZ	/* Internal kernel timer frequency */
+# define USER_HZ	100		/* some user APIs are in "ticks" */
+# define CLOCKS_PER_SEC	(USER_HZ)	/* like times() */
 #endif
 
 #ifndef HZ
--- ../linux-2.6.12_src/kernel/Kconfig.hz	1970-01-01 01:00:00.000000000 +0100
+++ kernel/Kconfig.hz	2005-07-12 12:51:23.000000000 +0100
@@ -0,0 +1,18 @@
+# Timer Interrupt Frequency Configuration
+
+config HZ
+	int "Software clock updates/interrupts per second"
+	default 100
+	help
+	  This is the number of interrupts per second to update the software
+	  clock. It also relates to the length of a scheduler timeslice, and
+	  therefore to CPU responsiveness.
+	  The more interrupts per second the higher the resolution of software
+	  clock related events, but also the higher the power consumption on
+	  battery powered devices, and the higher the overhead, which may be
+	  significant on slower CPUs (e.g. x86 < 400MHz) or SMP systems (timer
+	  interrupts happen on every CPU on SMP systems).
+	  The default value up to and including 2.4 was 100 and for 2.6 it
+	  has been changed to 1000. Probably you should set it to 100 (or
+	  even 50) for laptops or slower CPUs or servers or SMP systems,
+	  and to 1000 (or 512) for desktops with faster CPUs.
