From: Andrew Theurer Allow idle_balance to search an incresingly larger span of cpus to find a cpu. Minor change, NODE_SD_INIT gets SD_BALANCE_NEWIDLE flag. This is critical for x86_64, where there is only one cpu oer node. In the current code, idle_balance for Opteron -never- works. Signed-off-by: Signed-off-by: Andrew Morton --- 25-akpm/include/asm-i386/topology.h | 1 + 25-akpm/include/asm-ia64/topology.h | 1 + 25-akpm/include/asm-ppc64/topology.h | 1 + 25-akpm/include/asm-x86_64/topology.h | 1 + 4 files changed, 4 insertions(+) diff -puN include/asm-i386/topology.h~sched-newidle-fix include/asm-i386/topology.h --- 25/include/asm-i386/topology.h~sched-newidle-fix 2004-11-30 01:23:38.083977464 -0800 +++ 25-akpm/include/asm-i386/topology.h 2004-11-30 01:23:38.091976248 -0800 @@ -80,6 +80,7 @@ static inline cpumask_t pcibus_to_cpumas .per_cpu_gain = 100, \ .flags = SD_LOAD_BALANCE \ | SD_BALANCE_EXEC \ + | SD_BALANCE_NEWIDLE \ | SD_WAKE_IDLE \ | SD_WAKE_BALANCE, \ .last_balance = jiffies, \ diff -puN include/asm-ia64/topology.h~sched-newidle-fix include/asm-ia64/topology.h --- 25/include/asm-ia64/topology.h~sched-newidle-fix 2004-11-30 01:23:38.084977312 -0800 +++ 25-akpm/include/asm-ia64/topology.h 2004-11-30 01:23:38.091976248 -0800 @@ -56,6 +56,7 @@ void build_cpu_to_node_map(void); .per_cpu_gain = 100, \ .flags = SD_LOAD_BALANCE \ | SD_BALANCE_EXEC \ + | SD_BALANCE_NEWIDLE \ | SD_WAKE_IDLE \ | SD_WAKE_BALANCE, \ .last_balance = jiffies, \ diff -puN include/asm-ppc64/topology.h~sched-newidle-fix include/asm-ppc64/topology.h --- 25/include/asm-ppc64/topology.h~sched-newidle-fix 2004-11-30 01:23:38.086977008 -0800 +++ 25-akpm/include/asm-ppc64/topology.h 2004-11-30 01:23:38.092976096 -0800 @@ -51,6 +51,7 @@ static inline int node_to_first_cpu(int .per_cpu_gain = 100, \ .flags = SD_LOAD_BALANCE \ | SD_BALANCE_EXEC \ + | SD_BALANCE_NEWIDLE \ | SD_WAKE_IDLE \ | SD_WAKE_BALANCE, \ .last_balance = jiffies, \ diff -puN include/asm-x86_64/topology.h~sched-newidle-fix include/asm-x86_64/topology.h --- 25/include/asm-x86_64/topology.h~sched-newidle-fix 2004-11-30 01:23:38.087976856 -0800 +++ 25-akpm/include/asm-x86_64/topology.h 2004-11-30 01:23:38.092976096 -0800 @@ -52,6 +52,7 @@ static inline cpumask_t __pcibus_to_cpum .cache_nice_tries = 1, \ .per_cpu_gain = 100, \ .flags = SD_LOAD_BALANCE \ + | SD_BALANCE_NEWIDLE \ | SD_BALANCE_EXEC \ | SD_WAKE_IDLE \ | SD_WAKE_BALANCE, \ _