linux/arch/sparc/kernel
Ingo Molnar 0437e109e1 sched: zap the migration init / cache-hot balancing code
the SMP load-balancer uses the boot-time migration-cost estimation
code to attempt to improve the quality of balancing. The reason for
this code is that the discrete priority queues do not preserve
the order of scheduling accurately, so the load-balancer skips
tasks that were running on a CPU 'recently'.

this code is fundamental fragile: the boot-time migration cost detector
doesnt really work on systems that had large L3 caches, it caused boot
delays on large systems and the whole cache-hot concept made the
balancing code pretty undeterministic as well.

(and hey, i wrote most of it, so i can say it out loud that it sucks ;-)

under CFS the same purpose of cache affinity can be achieved without
any special cache-hot special-case: tasks are sorted in the 'timeline'
tree and the SMP balancer picks tasks from the left side of the
tree, thus the most cache-cold task is balanced automatically.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
2007-07-09 18:51:57 +02:00
..
Makefile [PATCH] sort the devres mess out 2007-02-11 11:18:07 -08:00
apc.c [PATCH] mark struct file_operations const 2 2007-02-12 09:48:44 -08:00
asm-offsets.c rename thread_info to stack 2007-05-09 12:30:56 -07:00
auxio.c [SPARC]: Spelling fixes. 2007-05-11 21:39:20 -07:00
cpu.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
devices.c [SPARC]: Simplify and correct __cpu_find_by() 2006-07-21 14:18:15 -07:00
ebus.c [SPARC]: device_node name constification fallout 2007-04-26 01:55:45 -07:00
entry.S [SPARC]: Fix robust futex syscalls and wire up migrate_pages. 2006-11-05 16:51:03 -08:00
errtbls.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
etrap.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
head.S [SPARC32]: Fix sparc32 kdebug changes. 2007-05-14 03:22:08 -07:00
idprom.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
init_task.c [PATCH] nsproxy: move init_nsproxy into kernel/nsproxy.c 2006-10-02 07:57:20 -07:00
ioport.c [SPARC]: Spelling fixes. 2007-05-11 21:39:20 -07:00
irq.c [SPARC]: Spelling fixes. 2007-05-11 21:39:20 -07:00
led.c [PATCH] arch/sparc/kernel/led.c __user annotations 2005-12-15 10:01:29 -08:00
module.c [SPARC]: Handle UNWIND_INFO properly. 2006-05-12 12:45:50 -07:00
muldiv.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
of_device.c [SPARC]: constify of_get_property return: arch/sparc 2007-04-26 01:54:22 -07:00
pcic.c [SPARC]: Spelling fixes. 2007-05-11 21:39:20 -07:00
pmc.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
process.c [SPARC]: Spelling fixes. 2007-05-11 21:39:20 -07:00
prom.c [SPARC]: Use strcasecmp for OFW property name comparisons. 2007-04-26 01:54:41 -07:00
ptrace.c [SPARC{32,64}]: Propagate ptrace_traceme() return value. 2006-12-10 02:40:27 -08:00
rtrap.S [SPARC]: Add support for *at(), ppoll, and pselect syscalls. 2006-01-19 02:42:49 -08:00
sclow.S kbuild: arm26,sparc use generic asm-offset support 2005-09-09 20:35:55 +02:00
semaphore.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
setup.c move die notifier handling to common code 2007-05-08 11:15:04 -07:00
signal.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
smp.c sched: zap the migration init / cache-hot balancing code 2007-07-09 18:51:57 +02:00
sparc-stub.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sparc_ksyms.c [SPARC]: Re-export saved_command_line to modules. 2007-02-12 15:15:48 -08:00
sun4c_irq.c IRQ: Use the new typedef for interrupt handler function pointers 2006-10-09 12:19:47 +01:00
sun4d_irq.c [SPARC]: Spelling fixes. 2007-05-11 21:39:20 -07:00
sun4d_smp.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
sun4m_irq.c [SPARC]: Spelling fixes. 2007-05-11 21:39:20 -07:00
sun4m_smp.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
sun4setup.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sunos_asm.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sunos_ioctl.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
sys_solaris.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
sys_sparc.c [PATCH] provide kernel_execve on all architectures 2006-10-02 07:57:23 -07:00
sys_sunos.c [SPARC]: avoid CHILD_MAX and OPEN_MAX constants 2007-04-12 13:13:42 -07:00
systbls.S [SPARC]: Wire up signalfd/timerfd/eventfd syscalls. 2007-05-11 22:06:51 -07:00
tadpole.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
tick14.c IRQ: Use the new typedef for interrupt handler function pointers 2006-10-09 12:19:47 +01:00
time.c [SPARC32]: Removes mismatch section warnigs in sparc time.c file 2007-05-29 02:49:16 -07:00
trampoline.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
traps.c move die notifier handling to common code 2007-05-08 11:15:04 -07:00
unaligned.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
vmlinux.lds.S all-archs: consolidate .data section definition in asm-generic 2007-05-19 09:11:57 +02:00
windows.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
wof.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
wuf.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00