Commit e1474e2d authored by Dave Hansen's avatar Dave Hansen Committed by Linus Torvalds

[PATCH] re-disable TSC on NUMAQ

Somewhere recently, the TSC got re-enabled for timekeeping on NUMAQ
machines.  However, the hardware makes these get unsynchronized quite
badly.  So badly, in fact, that the code to fix up the skew can just hang
on boot.

This patch re-disables them.  It's nicely confined to the numaq.c file.  It
would be great if this could make it into 2.6.13, I think it counts as a
bugfix.

Tested on a 16-proc 4-node NUMAQ.
Signed-off-by: default avatarDave Hansen <haveblue@us.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 78fa74a2
...@@ -31,6 +31,7 @@ ...@@ -31,6 +31,7 @@
#include <linux/nodemask.h> #include <linux/nodemask.h>
#include <asm/numaq.h> #include <asm/numaq.h>
#include <asm/topology.h> #include <asm/topology.h>
#include <asm/processor.h>
#define MB_TO_PAGES(addr) ((addr) << (20 - PAGE_SHIFT)) #define MB_TO_PAGES(addr) ((addr) << (20 - PAGE_SHIFT))
...@@ -77,3 +78,11 @@ int __init get_memcfg_numaq(void) ...@@ -77,3 +78,11 @@ int __init get_memcfg_numaq(void)
smp_dump_qct(); smp_dump_qct();
return 1; return 1;
} }
static int __init numaq_dsc_disable(void)
{
printk(KERN_DEBUG "NUMAQ: disabling TSC\n");
tsc_disable = 1;
return 0;
}
core_initcall(numaq_dsc_disable);
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment