rpms/kernel/F-8 kernel.spec, 1.295, 1.296 linux-2.6-highres-timers.patch, 1.18, 1.19 linux-2.6-highres-timers-fix-hang.patch, 1.1, NONE

Chuck Ebbert (cebbert) fedora-extras-commits at redhat.com
Mon Dec 10 19:05:28 UTC 2007


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-8
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv15042

Modified Files:
	kernel.spec linux-2.6-highres-timers.patch 
Removed Files:
	linux-2.6-highres-timers-fix-hang.patch 
Log Message:
* Mon Dec 10 2007 Chuck Ebbert <cebbert at redhat.com> 2.6.23.9-87
- highres-timers: update to -hrt4 (#394981); includes hang fix



Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/kernel.spec,v
retrieving revision 1.295
retrieving revision 1.296
diff -u -r1.295 -r1.296
--- kernel.spec	10 Dec 2007 16:31:52 -0000	1.295
+++ kernel.spec	10 Dec 2007 19:04:49 -0000	1.296
@@ -565,7 +565,6 @@
 Patch05: linux-2.6-upstream-reverts.patch
 
 Patch10: linux-2.6-highres-timers.patch
-Patch11: linux-2.6-highres-timers-fix-hang.patch
 
 Patch21: linux-2.6-utrace-tracehook.patch
 Patch22: linux-2.6-utrace-tracehook-ia64.patch
@@ -1057,8 +1056,6 @@
 
 # patch-2.6.23-hrt3.patch
 ApplyPatch linux-2.6-highres-timers.patch
-# fix possible hang
-ApplyPatch linux-2.6-highres-timers-fix-hang.patch
 
 # Roland's utrace ptrace replacement.
 # Main patch includes i386, x86_64, powerpc.
@@ -2015,7 +2012,10 @@
 
 
 %changelog
-* Mon Dec 10 2007 John W. Linville <linville at redhat.com> 2.6.23.9-85
+* Mon Dec 10 2007 Chuck Ebbert <cebbert at redhat.com> 2.6.23.9-87
+- highres-timers: update to -hrt4 (#394981); includes hang fix
+
+* Mon Dec 10 2007 John W. Linville <linville at redhat.com> 2.6.23.9-86
 - add module alias for "zd1211rw-mac80211"
 
 * Fri Dec 07 2007 Chuck Ebbert <cebbert at redhat.com> 2.6.23.9-84

linux-2.6-highres-timers.patch:

Index: linux-2.6-highres-timers.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/linux-2.6-highres-timers.patch,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- linux-2.6-highres-timers.patch	17 Oct 2007 17:32:39 -0000	1.18
+++ linux-2.6-highres-timers.patch	10 Dec 2007 19:04:50 -0000	1.19
@@ -1,7 +1,7 @@
 Index: linux-2.6.23/include/linux/clockchips.h
 ===================================================================
---- linux-2.6.23.orig/include/linux/clockchips.h	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/include/linux/clockchips.h	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/include/linux/clockchips.h	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/include/linux/clockchips.h	2007-12-10 08:21:12.000000000 +0100
 @@ -8,7 +8,7 @@
  #ifndef _LINUX_CLOCKCHIPS_H
  #define _LINUX_CLOCKCHIPS_H
@@ -38,8 +38,8 @@
  #endif
 Index: linux-2.6.23/kernel/time/Kconfig
 ===================================================================
---- linux-2.6.23.orig/kernel/time/Kconfig	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/kernel/time/Kconfig	2007-10-17 00:18:31.000000000 +0200
+--- linux-2.6.23.orig/kernel/time/Kconfig	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/kernel/time/Kconfig	2007-12-10 08:21:08.000000000 +0100
 @@ -23,3 +23,8 @@ config HIGH_RES_TIMERS
  	  hardware is not capable then this option only increases
  	  the size of the kernel image.
@@ -51,8 +51,8 @@
 +
 Index: linux-2.6.23/kernel/time/Makefile
 ===================================================================
---- linux-2.6.23.orig/kernel/time/Makefile	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/kernel/time/Makefile	2007-10-17 00:18:31.000000000 +0200
+--- linux-2.6.23.orig/kernel/time/Makefile	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/kernel/time/Makefile	2007-12-10 08:21:08.000000000 +0100
 @@ -1,6 +1,6 @@
  obj-y += timekeeping.o ntp.o clocksource.o jiffies.o timer_list.o
  
@@ -63,8 +63,8 @@
  obj-$(CONFIG_TICK_ONESHOT)			+= tick-oneshot.o
 Index: linux-2.6.23/kernel/time/clockevents.c
 ===================================================================
---- linux-2.6.23.orig/kernel/time/clockevents.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/kernel/time/clockevents.c	2007-10-17 00:18:31.000000000 +0200
+--- linux-2.6.23.orig/kernel/time/clockevents.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/kernel/time/clockevents.c	2007-12-10 08:21:08.000000000 +0100
 @@ -194,6 +194,7 @@ void clockevents_exchange_device(struct 
  	local_irq_restore(flags);
  }
@@ -81,8 +81,8 @@
 +#endif
 Index: linux-2.6.23/kernel/time/tick-broadcast.c
 ===================================================================
---- linux-2.6.23.orig/kernel/time/tick-broadcast.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/kernel/time/tick-broadcast.c	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/kernel/time/tick-broadcast.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/kernel/time/tick-broadcast.c	2007-12-10 08:21:12.000000000 +0100
 @@ -64,8 +64,9 @@ static void tick_broadcast_start_periodi
   */
  int tick_check_broadcast_device(struct clock_event_device *dev)
@@ -161,8 +161,8 @@
  /*
 Index: linux-2.6.23/Documentation/00-INDEX
 ===================================================================
---- linux-2.6.23.orig/Documentation/00-INDEX	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/Documentation/00-INDEX	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/Documentation/00-INDEX	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/Documentation/00-INDEX	2007-12-10 08:21:08.000000000 +0100
 @@ -62,6 +62,8 @@ VGA-softcursor.txt
  	- how to change your VGA cursor from a blinking underscore.
  accounting/
@@ -175,7 +175,7 @@
 Index: linux-2.6.23/Documentation/acpi/00-INDEX
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/Documentation/acpi/00-INDEX	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/Documentation/acpi/00-INDEX	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,6 @@
 +00-INDEX
 +	- this file
@@ -186,7 +186,7 @@
 Index: linux-2.6.23/Documentation/acpi/README.ACPI
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/Documentation/acpi/README.ACPI	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/Documentation/acpi/README.ACPI	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,377 @@
 +Developing ACPI for Linux - July 13, 2007
 +------------------------------------------
@@ -568,7 +568,7 @@
 Index: linux-2.6.23/Documentation/acpi/acpi_debugging.txt
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/Documentation/acpi/acpi_debugging.txt	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/Documentation/acpi/acpi_debugging.txt	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,173 @@
 +How to debug ACPI (Advanced Configuration and Power Interface) Problems
 +=======================================================================
@@ -745,8 +745,8 @@
 +	 acpi_debug_level=0x3        /* lower debug output again */
 Index: linux-2.6.23/arch/i386/Kconfig
 ===================================================================
---- linux-2.6.23.orig/arch/i386/Kconfig	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/arch/i386/Kconfig	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/arch/i386/Kconfig	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/arch/i386/Kconfig	2007-12-10 08:21:08.000000000 +0100
 @@ -1069,6 +1069,8 @@ endif # APM
  
  source "arch/i386/kernel/cpu/cpufreq/Kconfig"
@@ -758,8 +758,8 @@
  menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
 Index: linux-2.6.23/arch/x86_64/Kconfig
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/Kconfig	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/Kconfig	2007-10-17 00:18:33.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/Kconfig	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/arch/x86_64/Kconfig	2007-12-10 08:21:10.000000000 +0100
 @@ -28,6 +28,18 @@ config GENERIC_TIME
  	bool
  	default y
@@ -810,8 +810,8 @@
  menu "Bus options (PCI etc.)"
 Index: linux-2.6.23/drivers/Makefile
 ===================================================================
---- linux-2.6.23.orig/drivers/Makefile	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/drivers/Makefile	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/drivers/Makefile	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/drivers/Makefile	2007-12-10 08:21:08.000000000 +0100
 @@ -76,6 +76,7 @@ obj-$(CONFIG_MCA)		+= mca/
  obj-$(CONFIG_EISA)		+= eisa/
  obj-$(CONFIG_LGUEST_GUEST)	+= lguest/
@@ -822,8 +822,8 @@
  obj-$(CONFIG_INFINIBAND)	+= infiniband/
 Index: linux-2.6.23/drivers/acpi/osl.c
 ===================================================================
---- linux-2.6.23.orig/drivers/acpi/osl.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/drivers/acpi/osl.c	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/drivers/acpi/osl.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/drivers/acpi/osl.c	2007-12-10 08:21:08.000000000 +0100
 @@ -1043,14 +1043,6 @@ static int __init acpi_wake_gpes_always_
  __setup("acpi_wake_gpes_always_on", acpi_wake_gpes_always_on_setup);
  
@@ -841,8 +841,8 @@
   * handle is a pointer to the spinlock_t.
 Index: linux-2.6.23/drivers/acpi/processor_core.c
 ===================================================================
---- linux-2.6.23.orig/drivers/acpi/processor_core.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/drivers/acpi/processor_core.c	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/drivers/acpi/processor_core.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/drivers/acpi/processor_core.c	2007-12-10 08:21:08.000000000 +0100
 @@ -44,6 +44,7 @@
  #include <linux/seq_file.h>
  #include <linux/dmi.h>
@@ -900,8 +900,8 @@
  	return;
 Index: linux-2.6.23/drivers/acpi/processor_idle.c
 ===================================================================
---- linux-2.6.23.orig/drivers/acpi/processor_idle.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/drivers/acpi/processor_idle.c	2007-10-17 00:18:34.000000000 +0200
+--- linux-2.6.23.orig/drivers/acpi/processor_idle.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/drivers/acpi/processor_idle.c	2007-12-10 08:21:10.000000000 +0100
 @@ -40,6 +40,7 @@
  #include <linux/sched.h>	/* need_resched() */
  #include <linux/latency.h>
@@ -2070,7 +2070,7 @@
 Index: linux-2.6.23/drivers/cpuidle/Kconfig
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/Kconfig	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/Kconfig	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,39 @@
 +menu "CPU idle PM support"
 +
@@ -2114,7 +2114,7 @@
 Index: linux-2.6.23/drivers/cpuidle/Makefile
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/Makefile	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/Makefile	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,5 @@
 +#
 +# Makefile for cpuidle.
@@ -2124,7 +2124,7 @@
 Index: linux-2.6.23/drivers/cpuidle/cpuidle.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/cpuidle.c	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/cpuidle.c	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,295 @@
 +/*
 + * cpuidle.c - core cpuidle infrastructure
@@ -2424,7 +2424,7 @@
 Index: linux-2.6.23/drivers/cpuidle/cpuidle.h
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/cpuidle.h	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/cpuidle.h	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,33 @@
 +/*
 + * cpuidle.h - The internal header file
@@ -2462,7 +2462,7 @@
 Index: linux-2.6.23/drivers/cpuidle/driver.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/driver.c	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/driver.c	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,56 @@
 +/*
 + * driver.c - driver support
@@ -2523,7 +2523,7 @@
 Index: linux-2.6.23/drivers/cpuidle/governor.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/governor.c	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/governor.c	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,141 @@
 +/*
 + * governor.c - governor support
@@ -2669,7 +2669,7 @@
 Index: linux-2.6.23/drivers/cpuidle/governors/Makefile
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/governors/Makefile	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/governors/Makefile	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,6 @@
 +#
 +# Makefile for cpuidle governors.
@@ -2680,7 +2680,7 @@
 Index: linux-2.6.23/drivers/cpuidle/governors/ladder.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/governors/ladder.c	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/governors/ladder.c	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,166 @@
 +/*
 + * ladder.c - the residency ladder algorithm
@@ -2851,7 +2851,7 @@
 Index: linux-2.6.23/drivers/cpuidle/governors/menu.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/governors/menu.c	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/governors/menu.c	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,137 @@
 +/*
 + * menu.c - the menu idle governor
@@ -2993,7 +2993,7 @@
 Index: linux-2.6.23/drivers/cpuidle/sysfs.c
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/drivers/cpuidle/sysfs.c	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/drivers/cpuidle/sysfs.c	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,361 @@
 +/*
 + * sysfs.c - sysfs support
@@ -3358,8 +3358,8 @@
 +}
 Index: linux-2.6.23/drivers/misc/sony-laptop.c
 ===================================================================
---- linux-2.6.23.orig/drivers/misc/sony-laptop.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/drivers/misc/sony-laptop.c	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/drivers/misc/sony-laptop.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/drivers/misc/sony-laptop.c	2007-12-10 08:21:08.000000000 +0100
 @@ -1173,7 +1173,8 @@ static struct acpi_driver sony_nc_driver
  #define SONYPI_TYPE3_OFFSET	0x12
  
@@ -3688,8 +3688,8 @@
  	sonypi_compat_exit();
 Index: linux-2.6.23/drivers/net/wireless/ipw2100.c
 ===================================================================
---- linux-2.6.23.orig/drivers/net/wireless/ipw2100.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/drivers/net/wireless/ipw2100.c	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/drivers/net/wireless/ipw2100.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/drivers/net/wireless/ipw2100.c	2007-12-10 08:21:08.000000000 +0100
 @@ -1858,14 +1858,6 @@ static void ipw2100_down(struct ipw2100_
  
  	modify_acceptable_latency("ipw2100", INFINITE_LATENCY);
@@ -3746,8 +3746,8 @@
  	write_register(priv->net_dev, IPW_REG_RESET_REG,
 Index: linux-2.6.23/drivers/net/wireless/ipw2100.h
 ===================================================================
---- linux-2.6.23.orig/drivers/net/wireless/ipw2100.h	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/drivers/net/wireless/ipw2100.h	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/drivers/net/wireless/ipw2100.h	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/drivers/net/wireless/ipw2100.h	2007-12-10 08:21:08.000000000 +0100
 @@ -479,7 +479,6 @@ enum {
  #define CFG_ASSOCIATE           (1<<6)
  #define CFG_FIXED_RATE          (1<<7)
@@ -3766,8 +3766,8 @@
  	unsigned long last_reset;
 Index: linux-2.6.23/include/acpi/processor.h
 ===================================================================
---- linux-2.6.23.orig/include/acpi/processor.h	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/include/acpi/processor.h	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/include/acpi/processor.h	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/include/acpi/processor.h	2007-12-10 08:21:08.000000000 +0100
 @@ -3,6 +3,7 @@
  
  #include <linux/kernel.h>
@@ -3805,8 +3805,8 @@
  extern struct file_operations acpi_processor_limit_fops;
 Index: linux-2.6.23/include/linux/acpi.h
 ===================================================================
---- linux-2.6.23.orig/include/linux/acpi.h	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/include/linux/acpi.h	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/include/linux/acpi.h	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/include/linux/acpi.h	2007-12-10 08:21:08.000000000 +0100
 @@ -189,32 +189,6 @@ extern int ec_transaction(u8 command,
  extern int acpi_blacklisted(void);
  extern void acpi_bios_year(char *s);
@@ -3843,7 +3843,7 @@
 Index: linux-2.6.23/include/linux/cpuidle.h
 ===================================================================
 --- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.23/include/linux/cpuidle.h	2007-10-17 00:18:32.000000000 +0200
++++ linux-2.6.23/include/linux/cpuidle.h	2007-12-10 08:21:08.000000000 +0100
 @@ -0,0 +1,180 @@
 +/*
 + * cpuidle.h - a generic framework for CPU idle power management
@@ -4027,8 +4027,8 @@
 +#endif /* _LINUX_CPUIDLE_H */
 Index: linux-2.6.23/include/linux/tick.h
 ===================================================================
---- linux-2.6.23.orig/include/linux/tick.h	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/include/linux/tick.h	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/include/linux/tick.h	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/include/linux/tick.h	2007-12-10 08:21:08.000000000 +0100
 @@ -40,6 +40,7 @@ enum tick_nohz_mode {
   * @idle_sleeps:	Number of idle calls, where the sched tick was stopped
   * @idle_entrytime:	Time when the idle call was entered
@@ -4065,8 +4065,8 @@
  #endif
 Index: linux-2.6.23/kernel/time/tick-sched.c
 ===================================================================
---- linux-2.6.23.orig/kernel/time/tick-sched.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/kernel/time/tick-sched.c	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/kernel/time/tick-sched.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/kernel/time/tick-sched.c	2007-12-10 08:21:08.000000000 +0100
 @@ -153,6 +153,7 @@ void tick_nohz_stop_sched_tick(void)
  	unsigned long seq, last_jiffies, next_jiffies, delta_jiffies, flags;
  	struct tick_sched *ts;
@@ -4104,7 +4104,7 @@
   * Restart the idle tick when the CPU is woken up from idle
 Index: linux-2.6.23/arch/x86_64/kernel/hpet.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/hpet.c	2007-10-17 00:18:31.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/hpet.c	2007-12-10 08:21:07.000000000 +0100
 +++ /dev/null	1970-01-01 00:00:00.000000000 +0000
 @@ -1,493 +0,0 @@
 -#include <linux/kernel.h>
@@ -4602,8 +4602,8 @@
 -__setup("nohpet", nohpet_setup);
 Index: linux-2.6.23/arch/x86_64/kernel/time.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/time.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/time.c	2007-10-17 00:18:33.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/time.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/time.c	2007-12-10 08:21:10.000000000 +0100
 @@ -28,11 +28,12 @@
  #include <linux/cpu.h>
  #include <linux/kallsyms.h>
@@ -4832,8 +4832,8 @@
 -device_initcall(time_init_device);
 Index: linux-2.6.23/arch/x86_64/kernel/tsc.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/tsc.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/tsc.c	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/tsc.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/tsc.c	2007-12-10 08:21:08.000000000 +0100
 @@ -6,7 +6,9 @@
  #include <linux/time.h>
  #include <linux/acpi.h>
@@ -4941,8 +4941,8 @@
   * over all CPUs.
 Index: linux-2.6.23/include/asm-i386/tsc.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-i386/tsc.h	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/include/asm-i386/tsc.h	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/include/asm-i386/tsc.h	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/include/asm-i386/tsc.h	2007-12-10 08:21:08.000000000 +0100
 @@ -72,4 +72,8 @@ int check_tsc_unstable(void);
  extern void check_tsc_sync_source(int cpu);
  extern void check_tsc_sync_target(void);
@@ -4954,8 +4954,8 @@
  #endif
 Index: linux-2.6.23/arch/i386/kernel/hpet.c
 ===================================================================
---- linux-2.6.23.orig/arch/i386/kernel/hpet.c	2007-10-17 00:18:31.000000000 +0200
-+++ linux-2.6.23/arch/i386/kernel/hpet.c	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/arch/i386/kernel/hpet.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/arch/i386/kernel/hpet.c	2007-12-10 08:21:12.000000000 +0100
 @@ -1,5 +1,6 @@
  #include <linux/clocksource.h>
  #include <linux/clockchips.h>
@@ -4989,7 +4989,7 @@
  {
  	return readl(hpet_virt_address + a);
  }
-@@ -34,6 +35,36 @@ static inline void hpet_writel(unsigned 
+@@ -34,21 +35,61 @@ static inline void hpet_writel(unsigned 
  	writel(d, hpet_virt_address + a);
  }
  
@@ -5026,7 +5026,18 @@
  /*
   * HPET command line enable / disable
   */
-@@ -49,6 +80,13 @@ static int __init hpet_setup(char* str)
+ static int boot_hpet_disable;
++int hpet_force_user;
+ 
+ static int __init hpet_setup(char* str)
+ {
+ 	if (str) {
+ 		if (!strncmp("disable", str, 7))
+ 			boot_hpet_disable = 1;
++		if (!strncmp("force", str, 5))
++			hpet_force_user = 1;
+ 	}
+ 	return 1;
  }
  __setup("hpet=", hpet_setup);
  
@@ -5040,7 +5051,7 @@
  static inline int is_hpet_capable(void)
  {
  	return (!boot_hpet_disable && hpet_address);
-@@ -83,7 +121,7 @@ static void hpet_reserve_platform_timers
+@@ -83,7 +124,7 @@ static void hpet_reserve_platform_timers
  
  	memset(&hd, 0, sizeof (hd));
  	hd.hd_phys_address = hpet_address;
@@ -5049,7 +5060,7 @@
  	hd.hd_nirqs = nrtimers;
  	hd.hd_flags = HPET_DATA_PLATFORM;
  	hpet_reserve_timer(&hd, 0);
-@@ -111,9 +149,9 @@ static void hpet_reserve_platform_timers
+@@ -111,9 +152,9 @@ static void hpet_reserve_platform_timers
   */
  static unsigned long hpet_period;
  
@@ -5061,7 +5072,7 @@
  			   struct clock_event_device *evt);
  
  /*
-@@ -122,10 +160,11 @@ static int hpet_next_event(unsigned long
+@@ -122,10 +163,11 @@ static int hpet_next_event(unsigned long
  static struct clock_event_device hpet_clockevent = {
  	.name		= "hpet",
  	.features	= CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT,
@@ -5075,7 +5086,7 @@
  };
  
  static void hpet_start_counter(void)
-@@ -140,7 +179,18 @@ static void hpet_start_counter(void)
+@@ -140,7 +182,18 @@ static void hpet_start_counter(void)
  	hpet_writel(cfg, HPET_CFG);
  }
  
@@ -5095,7 +5106,7 @@
  {
  	unsigned long cfg = hpet_readl(HPET_CFG);
  
-@@ -149,7 +199,39 @@ static void hpet_enable_int(void)
+@@ -149,7 +202,39 @@ static void hpet_enable_int(void)
  	hpet_legacy_int_enabled = 1;
  }
  
@@ -5136,7 +5147,7 @@
  			  struct clock_event_device *evt)
  {
  	unsigned long cfg, cmp, now;
-@@ -190,12 +272,12 @@ static void hpet_set_mode(enum clock_eve
+@@ -190,12 +275,12 @@ static void hpet_set_mode(enum clock_eve
  		break;
  
  	case CLOCK_EVT_MODE_RESUME:
@@ -5151,7 +5162,7 @@
  			   struct clock_event_device *evt)
  {
  	unsigned long cnt;
-@@ -215,6 +297,13 @@ static cycle_t read_hpet(void)
+@@ -215,6 +300,13 @@ static cycle_t read_hpet(void)
  	return (cycle_t)hpet_readl(HPET_COUNTER);
  }
  
@@ -5165,7 +5176,7 @@
  static struct clocksource clocksource_hpet = {
  	.name		= "hpet",
  	.rating		= 250,
-@@ -222,61 +311,17 @@ static struct clocksource clocksource_hp
+@@ -222,61 +314,17 @@ static struct clocksource clocksource_hp
  	.mask		= HPET_MASK,
  	.shift		= HPET_SHIFT,
  	.flags		= CLOCK_SOURCE_IS_CONTINUOUS,
@@ -5232,7 +5243,7 @@
  	/* Start the counter */
  	hpet_start_counter();
  
-@@ -298,7 +343,7 @@ int __init hpet_enable(void)
+@@ -298,7 +346,7 @@ int __init hpet_enable(void)
  	if (t1 == read_hpet()) {
  		printk(KERN_WARNING
  		       "HPET counter not counting. HPET disabled\n");
@@ -5241,7 +5252,7 @@
  	}
  
  	/* Initialize and register HPET clocksource
-@@ -319,27 +364,84 @@ int __init hpet_enable(void)
+@@ -319,27 +367,84 @@ int __init hpet_enable(void)
  
  	clocksource_register(&clocksource_hpet);
  
@@ -5339,8 +5350,8 @@
  
 Index: linux-2.6.23/arch/i386/kernel/i8253.c
 ===================================================================
---- linux-2.6.23.orig/arch/i386/kernel/i8253.c	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/arch/i386/kernel/i8253.c	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/arch/i386/kernel/i8253.c	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/arch/i386/kernel/i8253.c	2007-12-10 08:21:09.000000000 +0100
 @@ -13,7 +13,6 @@
  #include <asm/delay.h>
  #include <asm/i8253.h>
@@ -5365,8 +5376,8 @@
 +#endif
 Index: linux-2.6.23/include/asm-i386/i8253.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-i386/i8253.h	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/include/asm-i386/i8253.h	2007-10-17 00:18:34.000000000 +0200
+--- linux-2.6.23.orig/include/asm-i386/i8253.h	2007-12-10 08:21:07.000000000 +0100
++++ linux-2.6.23/include/asm-i386/i8253.h	2007-12-10 08:21:10.000000000 +0100
 @@ -1,8 +1,6 @@
  #ifndef __ASM_I8253_H__
  #define __ASM_I8253_H__
@@ -5378,8 +5389,8 @@
  #define PIT_CH0			0x40
 Index: linux-2.6.23/include/asm-x86_64/i8253.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-x86_64/i8253.h	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/include/asm-x86_64/i8253.h	2007-10-17 00:18:32.000000000 +0200
+--- linux-2.6.23.orig/include/asm-x86_64/i8253.h	2007-12-10 08:21:06.000000000 +0100
++++ linux-2.6.23/include/asm-x86_64/i8253.h	2007-12-10 08:21:09.000000000 +0100
 @@ -1,6 +1,2 @@
 -#ifndef __ASM_I8253_H__
 -#define __ASM_I8253_H__
@@ -5391,8 +5402,8 @@
 +#include <asm/8253pit.h>
 Index: linux-2.6.23/arch/x86_64/kernel/apic.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/apic.c	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/apic.c	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/apic.c	2007-12-10 08:21:06.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/apic.c	2007-12-10 08:21:12.000000000 +0100
 @@ -25,6 +25,7 @@
  #include <linux/sysdev.h>
  #include <linux/module.h>
@@ -5885,8 +5896,8 @@
 -
 Index: linux-2.6.23/arch/x86_64/kernel/process.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/process.c	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/process.c	2007-10-17 00:18:33.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/process.c	2007-12-10 08:21:06.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/process.c	2007-12-10 08:21:09.000000000 +0100
 @@ -38,6 +38,7 @@
  #include <linux/notifier.h>
  #include <linux/kprobes.h>
@@ -5914,8 +5925,8 @@
  		preempt_disable();
 Index: linux-2.6.23/arch/x86_64/kernel/Makefile
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/Makefile	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/Makefile	2007-10-17 00:18:33.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/Makefile	2007-12-10 08:21:06.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/Makefile	2007-12-10 08:21:10.000000000 +0100
 @@ -9,7 +9,7 @@ obj-y	:= process.o signal.o entry.o trap
  		x8664_ksyms.o i387.o syscall.o vsyscall.o \
  		setup64.o bootflag.o e820.o reboot.o quirks.o i8237.o \
@@ -5936,8 +5947,8 @@
  cpuid-$(subst m,y,$(CONFIG_X86_CPUID))  += ../../i386/kernel/cpuid.o
 Index: linux-2.6.23/arch/x86_64/kernel/i8259.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/i8259.c	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/i8259.c	2007-10-17 00:18:33.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/i8259.c	2007-12-10 08:21:06.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/i8259.c	2007-12-10 08:21:10.000000000 +0100
 @@ -444,46 +444,6 @@ void __init init_ISA_irqs (void)
  	}
  }
@@ -6000,8 +6011,8 @@
  }
 Index: linux-2.6.23/arch/x86_64/kernel/smpboot.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/smpboot.c	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/smpboot.c	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/smpboot.c	2007-12-10 08:21:06.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/smpboot.c	2007-12-10 08:21:12.000000000 +0100
 @@ -223,8 +223,6 @@ void __cpuinit smp_callin(void)
  	local_irq_disable();
  	Dprintk("Stack at about %p\n",&cpuid);
@@ -6050,8 +6061,8 @@
  
 Index: linux-2.6.23/include/asm-x86_64/hpet.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-x86_64/hpet.h	2007-10-17 00:18:30.000000000 +0200
-+++ linux-2.6.23/include/asm-x86_64/hpet.h	2007-10-17 00:18:33.000000000 +0200
+--- linux-2.6.23.orig/include/asm-x86_64/hpet.h	2007-12-10 08:21:06.000000000 +0100
++++ linux-2.6.23/include/asm-x86_64/hpet.h	2007-12-10 08:21:10.000000000 +0100
 @@ -1,18 +1,2 @@
 -#ifndef _ASM_X8664_HPET_H
 -#define _ASM_X8664_HPET_H 1
@@ -6073,8 +6084,8 @@
 -#endif
 Index: linux-2.6.23/include/asm-x86_64/apic.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-x86_64/apic.h	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/include/asm-x86_64/apic.h	2007-10-17 00:18:34.000000000 +0200
+--- linux-2.6.23.orig/include/asm-x86_64/apic.h	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/include/asm-x86_64/apic.h	2007-12-10 08:21:10.000000000 +0100
 @@ -19,7 +19,7 @@
  extern int apic_verbosity;
  extern int apic_runs_main_timer;
@@ -6106,8 +6117,8 @@
  extern unsigned boot_cpu_id;
 Index: linux-2.6.23/include/asm-x86_64/proto.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-x86_64/proto.h	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/include/asm-x86_64/proto.h	2007-10-17 00:18:33.000000000 +0200
+--- linux-2.6.23.orig/include/asm-x86_64/proto.h	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/include/asm-x86_64/proto.h	2007-12-10 08:21:10.000000000 +0100
 @@ -51,9 +51,6 @@ extern void reserve_bootmem_generic(unsi
  
  extern void load_gs_index(unsigned gs);
@@ -6135,8 +6146,8 @@
  
 Index: linux-2.6.23/include/linux/jiffies.h
 ===================================================================
---- linux-2.6.23.orig/include/linux/jiffies.h	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/include/linux/jiffies.h	2007-10-17 00:18:34.000000000 +0200
+--- linux-2.6.23.orig/include/linux/jiffies.h	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/include/linux/jiffies.h	2007-12-10 08:21:10.000000000 +0100
 @@ -36,8 +36,6 @@
  /* LATCH is used in the interval timer and ftape setup. */
  #define LATCH  ((CLOCK_TICK_RATE + HZ/2) / HZ)	/* For divider */
@@ -6162,13 +6173,14 @@
  
 Index: linux-2.6.23/include/asm-i386/hpet.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-i386/hpet.h	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/include/asm-i386/hpet.h	2007-10-17 00:18:35.000000000 +0200
-@@ -64,8 +64,11 @@
+--- linux-2.6.23.orig/include/asm-i386/hpet.h	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/include/asm-i386/hpet.h	2007-12-10 08:21:12.000000000 +0100
+@@ -64,8 +64,12 @@
  
  /* hpet memory map physical address */
  extern unsigned long hpet_address;
 +extern unsigned long force_hpet_address;
++extern int hpet_force_user;
  extern int is_hpet_enabled(void);
  extern int hpet_enable(void);
 +extern unsigned long hpet_readl(unsigned long a);
@@ -6176,7 +6188,7 @@
  
  #ifdef CONFIG_HPET_EMULATE_RTC
  
-@@ -85,6 +88,7 @@ extern irqreturn_t hpet_rtc_interrupt(in
+@@ -85,6 +89,7 @@ extern irqreturn_t hpet_rtc_interrupt(in
  #else
  
  static inline int hpet_enable(void) { return 0; }
@@ -6186,8 +6198,8 @@
  #endif /* _I386_HPET_H */
 Index: linux-2.6.23/include/asm-x86_64/vsyscall.h
 ===================================================================
---- linux-2.6.23.orig/include/asm-x86_64/vsyscall.h	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/include/asm-x86_64/vsyscall.h	2007-10-17 00:18:34.000000000 +0200
+--- linux-2.6.23.orig/include/asm-x86_64/vsyscall.h	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/include/asm-x86_64/vsyscall.h	2007-12-10 08:21:10.000000000 +0100
 @@ -29,9 +29,6 @@ enum vsyscall_num {
  #define VGETCPU_RDTSCP	1
  #define VGETCPU_LSL	2
@@ -6200,8 +6212,8 @@
  
 Index: linux-2.6.23/arch/x86_64/kernel/setup.c
 ===================================================================
---- linux-2.6.23.orig/arch/x86_64/kernel/setup.c	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/arch/x86_64/kernel/setup.c	2007-10-17 00:18:34.000000000 +0200
+--- linux-2.6.23.orig/arch/x86_64/kernel/setup.c	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/arch/x86_64/kernel/setup.c	2007-12-10 08:21:10.000000000 +0100
 @@ -546,6 +546,37 @@ static void __init amd_detect_cmp(struct
  #endif
  }
@@ -6252,8 +6264,8 @@
  static void __cpuinit detect_ht(struct cpuinfo_x86 *c)
 Index: linux-2.6.23/kernel/time/tick-common.c
 ===================================================================
---- linux-2.6.23.orig/kernel/time/tick-common.c	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/kernel/time/tick-common.c	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/kernel/time/tick-common.c	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/kernel/time/tick-common.c	2007-12-10 08:21:12.000000000 +0100
 @@ -200,7 +200,7 @@ static int tick_check_new_device(struct 
  
  	cpu = smp_processor_id();
@@ -6282,8 +6294,8 @@
  
 Index: linux-2.6.23/arch/i386/kernel/quirks.c
 ===================================================================
---- linux-2.6.23.orig/arch/i386/kernel/quirks.c	2007-10-17 00:18:29.000000000 +0200
-+++ linux-2.6.23/arch/i386/kernel/quirks.c	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/arch/i386/kernel/quirks.c	2007-12-10 08:21:05.000000000 +0100
++++ linux-2.6.23/arch/i386/kernel/quirks.c	2007-12-10 08:21:12.000000000 +0100
 @@ -4,6 +4,8 @@
  #include <linux/pci.h>
  #include <linux/irq.h>
@@ -6293,7 +6305,7 @@
  #if defined(CONFIG_X86_IO_APIC) && defined(CONFIG_SMP) && defined(CONFIG_PCI)
  
  static void __devinit quirk_intel_irqbalance(struct pci_dev *dev)
-@@ -47,3 +49,280 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
+@@ -47,3 +49,290 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_IN
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_E7525_MCH,	quirk_intel_irqbalance);
  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL,	PCI_DEVICE_ID_INTEL_E7520_MCH,	quirk_intel_irqbalance);
  #endif
@@ -6481,14 +6493,24 @@
 +	printk(KERN_DEBUG "Failed to force enable HPET\n");
 +}
 +
++/*
++ * Undocumented chipset features. Make sure that the user enforced
++ * this.
++ */
++static void old_ich_force_enable_hpet_user(struct pci_dev *dev)
++{
++	if (hpet_force_user)
++		old_ich_force_enable_hpet(dev);
++}
++
 +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801CA_0,
-+                         old_ich_force_enable_hpet);
++                         old_ich_force_enable_hpet_user);
 +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801CA_12,
-+                         old_ich_force_enable_hpet);
++                         old_ich_force_enable_hpet_user);
 +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801DB_0,
-+                         old_ich_force_enable_hpet);
++                         old_ich_force_enable_hpet_user);
 +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801DB_12,
-+                         old_ich_force_enable_hpet);
++                         old_ich_force_enable_hpet_user);
 +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801EB_0,
 +                         old_ich_force_enable_hpet);
 +DECLARE_PCI_FIXUP_HEADER(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801EB_12,
@@ -6516,7 +6538,7 @@
 +{
 +	u32 val;
 +
-+	if (hpet_address || force_hpet_address)
++	if (!hpet_force_user || hpet_address || force_hpet_address)
 +		return;
 +
 +	pci_read_config_dword(dev, 0x68, &val);
@@ -6576,8 +6598,8 @@
 +#endif
 Index: linux-2.6.23/include/linux/pci_ids.h
 ===================================================================
---- linux-2.6.23.orig/include/linux/pci_ids.h	2007-10-17 00:18:28.000000000 +0200
-+++ linux-2.6.23/include/linux/pci_ids.h	2007-10-17 00:18:35.000000000 +0200
+--- linux-2.6.23.orig/include/linux/pci_ids.h	2007-12-10 08:21:04.000000000 +0100
++++ linux-2.6.23/include/linux/pci_ids.h	2007-12-10 08:21:11.000000000 +0100
 @@ -2221,6 +2221,7 @@
  #define PCI_DEVICE_ID_INTEL_82801EB_5	0x24d5
  #define PCI_DEVICE_ID_INTEL_82801EB_6	0x24d6
@@ -6586,3 +6608,39 @@
  #define PCI_DEVICE_ID_INTEL_82801EB_13	0x24dd
  #define PCI_DEVICE_ID_INTEL_ESB_1	0x25a1
  #define PCI_DEVICE_ID_INTEL_ESB_2	0x25a2
+Index: linux-2.6.23/Documentation/kernel-parameters.txt
+===================================================================
+--- linux-2.6.23.orig/Documentation/kernel-parameters.txt	2007-12-10 08:21:03.000000000 +0100
++++ linux-2.6.23/Documentation/kernel-parameters.txt	2007-12-10 08:21:12.000000000 +0100
+@@ -416,8 +416,10 @@ and is between 256 and 4096 characters. 
+ 			over the 8254 in addition to over the IO-APIC. The
+ 			kernel tries to set a sensible default.
+ 
+-	hpet=		[X86-32,HPET] option to disable HPET and use PIT.
+-			Format: disable
++	hpet=		[X86-32,HPET] option to control HPET usage
++			Format: { enable (default) | disable | force }
++			disable: disable HPET and use PIT instead
++			force: allow force enabled of undocumented chips (ICH4, VIA)
+ 
+ 	com20020=	[HW,NET] ARCnet - COM20020 chipset
+ 			Format:
+Index: linux-2.6.23/kernel/hrtimer.c
+===================================================================
+--- linux-2.6.23.orig/kernel/hrtimer.c	2007-12-10 08:21:03.000000000 +0100
++++ linux-2.6.23/kernel/hrtimer.c	2007-12-10 08:21:12.000000000 +0100
+@@ -826,6 +826,14 @@ hrtimer_start(struct hrtimer *timer, kti
+ #ifdef CONFIG_TIME_LOW_RES
+ 		tim = ktime_add(tim, base->resolution);
+ #endif
++		/*
++		 * Careful here: User space might have asked for a
++		 * very long sleep, so the add above might result in a
++		 * negative number, which enqueues the timer in front
++		 * of the queue.
++		 */
++		if (tim.tv64 < 0)
++			tim.tv64 = KTIME_MAX;
+ 	}
+ 	timer->expires = tim;
+ 


--- linux-2.6-highres-timers-fix-hang.patch DELETED ---




More information about the fedora-extras-commits mailing list