[PATCH] configure HAVE_UNSTABLE_SCHED_CLOCK for SGI_SN systems

Dimitri Sivanich
2009-01-06T16:27:41Z

Turn on CONFIG_HAVE_UNSTABLE_SCHED_CLOCK for SGI_SN.

SGI Altix has unsynchronized itc clocks. This results in rq->clock
occasionally being set to a time in the past by a remote cpu.

Note that it is possible that this problem may exist for other ia64
machines as well, based on the following comment for sched_clock() in
arch/ia64/kernel/head.S:

* Return a CPU-local timestamp in nano-seconds. This timestamp is
* NOT synchronized across CPUs its return value must never be
* compared against the values returned on another CPU. The usage in
* kernel/sched.c ensures that.

Signed-off-by: Dimitri Sivanich <sivanich@sgi.com>

---

Greg, if everyone is OK with this patch, this should also be applied
to all stable trees starting with 2.6.26.

arch/ia64/Kconfig | 1 +
1 file changed, 1 insertion(+)

Index: linux-2.6/arch/ia64/Kconfig
=================================--- linux-2.6.orig/arch/ia64/Kconfig 2009-01-06 10:13:13.051918923 -0600
+++ linux-2.6/arch/ia64/Kconfig 2009-01-06 10:13:44.547856328 -0600
@@ -536,6 +536,7 @@ config IA64_MC_ERR_INJECT

config SGI_SN
def_bool y if (IA64_SGI_SN2 || IA64_GENERIC)
+ select HAVE_UNSTABLE_SCHED_CLOCK

config IA64_ESI
bool "ESI (Extensible SAL Interface) support"