Re: 2.6.12-mm1 boot failure on NUMA box.

Ingo Molnar
2005-06-24T17:06:30Z

* Martin J. Bligh <mbligh@mbligh.org> wrote:

> OK, still broken with the last 3 backed out, but works with the last 4
> backed out. So I guess it's scheduler-cache-hot-autodetect.patch that
> breaks it. Con just sent me something else to try to fix it in order
> to run next ... will do that.

hm. Does it work if you disable migration-autodetect via passing in e.g.
migration_cost=1000,2000,3000 on the boot line? Is it perhaps the
excessive debugging that hurts.

or does it work if you undo the chunk below? Seemed harmless, but has
CONFIG_NUMA relevance.

Ingo

--- linux/arch/i386/kernel/timers/timer_tsc.c.orig
+++ linux/arch/i386/kernel/timers/timer_tsc.c
@@ -133,18 +133,15 @@ static unsigned long long monotonic_cloc

/*
* Scheduler clock - returns current time in nanosec units.
+ *
+ * it's not a problem if the TSC is unsynchronized,
+ * as the scheduler will carefully compensate for it.
*/
unsigned long long sched_clock(void)
{
unsigned long long this_offset;

- /*
- * In the NUMA case we dont use the TSC as they are not
- * synchronized across all CPUs.
- */
-#ifndef CONFIG_NUMA
- if (!use_tsc)
-#endif
+ if (!cpu_has_tsc)
/* no locking but a rare wrong value is not a big deal */
return jiffies_64 * (1000000000 / HZ);