linux-kernel-test/arch/mips/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
..
asm-offsets.c rename thread_info to stack 2007-05-09 12:30:56 -07:00
binfmt_elfn32.c [PATCH] elf: Always define elf_addr_t in linux/elf.h 2006-12-07 08:39:38 -08:00
binfmt_elfo32.c [PATCH] elf: Always define elf_addr_t in linux/elf.h 2006-12-07 08:39:38 -08:00
branch.c [MIPS] Unify mips_fpu_soft_struct and mips_fpu_hard_structs. 2006-06-19 17:39:18 +01:00
cpu-bugs64.c Remove obsolete #include <linux/config.h> 2006-06-30 19:25:36 +02:00
cpu-probe.c [MIPS] Fix scheduling latency issue on 24K, 34K and 74K cores 2007-07-06 16:17:11 +01:00
early_printk.c [MIPS] early_printk: allow the early console to run earlier 2007-05-11 14:28:30 +01:00
entry.S [MIPS] lockdep: Handle interrupts in R3000 style c0_status register. 2007-03-29 23:46:35 +01:00
gdb-low.S [MIPS] TRACE_IRQFLAGS_SUPPORT support. 2006-07-13 21:26:09 +01:00
gdb-stub.c [MIPS] Whitespace cleanups. 2007-02-06 16:53:19 +00:00
genex.S [MIPS] lockdep: Deal with interrupt disable hazard in TRACE_IRQFLAGS 2007-03-29 23:46:35 +01:00
head.S [MIPS] Move some kernel globals from asm file to C file. 2007-02-06 16:53:16 +00:00
i8253.c Input: pcspkr - separate device and driver registration 2006-03-14 00:11:50 -05:00
i8259.c [MIPS] Register PCI host bridge resource earlier 2007-04-27 16:20:25 +01:00
init_task.c [PATCH] nsproxy: move init_nsproxy into kernel/nsproxy.c 2006-10-02 07:57:20 -07:00
irix5sys.S Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
irixelf.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
irixinv.c Sparseify MIPS. 2005-10-29 19:30:50 +01:00
irixioctl.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
irixsig.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
irq_cpu.c [MIPS] use name instead of typename for each irq_chip 2007-02-06 16:53:14 +00:00
irq-msc01.c [MIPS] MT: Reenable EIC support and add support for SOCit SC. 2007-05-11 14:28:31 +01:00
irq-mv6434x.c [MIPS] Whitespace cleanups. 2007-02-06 16:53:19 +00:00
irq-rm7000.c [MIPS] use name instead of typename for each irq_chip 2007-02-06 16:53:14 +00:00
irq-rm9000.c [MIPS] use name instead of typename for each irq_chip 2007-02-06 16:53:14 +00:00
irq.c [MIPS] Drop __devinit tag from allocate_irqno() and free_irqno() 2007-05-11 14:28:31 +01:00
kspd.c [MIPS] Fix AP/SP to work in the reality of modern kernels. 2007-04-27 16:20:23 +01:00
linux32.c [MIPS] Fix some system calls with long long arguments 2007-06-06 19:34:32 +01:00
machine_kexec.c Storage class should be before const qualifier 2007-02-17 20:11:19 +01:00
Makefile [MIPS] Fix and cleanup the mess that a dozen prom_printf variants are. 2007-03-04 19:02:37 +00:00
mips_ksyms.c [MIPS] Export __copy_user_inatomic. 2007-03-07 00:07:17 +00:00
mips-mt.c [MIPS] VPE: Sprinkle device model code into code to make udev happier. 2007-02-10 22:38:42 +00:00
module.c [MIPS] Load modules to CKSEG0 if CONFIG_BUILD_ELF64=n 2006-11-30 01:14:44 +00:00
proc.c [MIPS] Whitespace cleanups. 2007-02-06 16:53:19 +00:00
process.c [MIPS] Make SMTC_IDLE_HOOK_DEBUG a proper option in Kconfig.debug. 2007-02-26 23:06:06 +00:00
ptrace32.c [MIPS] Make sure cpu_has_fpu is used only in atomic context 2006-10-09 23:20:48 +01:00
ptrace.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
r4k_fpu.S [MIPS] Check FCSR for pending interrupts, alternative version 2007-03-17 01:03:25 +00:00
r4k_switch.S [MIPS] Remove duplicate fpu enable hazard code. 2007-06-06 19:34:31 +01:00
r2300_fpu.S kbuild: mips use generic asm-offsets.h support 2005-09-09 22:32:31 +02:00
r2300_switch.S [MIPS] Disallow CpU exception in kernel again. 2007-04-20 14:58:37 +01:00
r6000_fpu.S kbuild: mips use generic asm-offsets.h support 2005-09-09 22:32:31 +02:00
relocate_kernel.S [MIPS] Add support for kexec 2006-11-30 01:14:44 +00:00
reset.c [MIPS] Export pm_power_off 2006-12-10 21:52:11 +00:00
rtlx.c [MIPS] Fix AP/SP to work in the reality of modern kernels. 2007-04-27 16:20:23 +01:00
scall32-o32.S [MIPS] Wire up utimensat, signalfd, timerfd, eventfd 2007-06-11 18:20:53 +01:00
scall64-64.S [MIPS] Wire up utimensat, signalfd, timerfd, eventfd 2007-06-11 18:20:53 +01:00
scall64-n32.S [MIPS] Wire up utimensat, signalfd, timerfd, eventfd 2007-06-11 18:20:53 +01:00
scall64-o32.S [MIPS] Wire up utimensat, signalfd, timerfd, eventfd 2007-06-11 18:20:53 +01:00
semaphore.c Always use ".set mips3" rather than select between "mips2" or "mips3" 2005-10-29 19:31:31 +01:00
setup.c [MIPS] Fix and cleanup the mess that a dozen prom_printf variants are. 2007-03-04 19:02:37 +00:00
signal32.c [MIPS] use compat_siginfo in rt_sigframe_n32 2007-06-26 19:57:33 +02:00
signal_n32.c [MIPS] use compat_siginfo in rt_sigframe_n32 2007-06-26 19:57:33 +02:00
signal-common.h [MIPS] Retry {save,restore}_fp_context if failed in atomic context. 2007-04-20 14:58:37 +01:00
signal.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
smp-mt.c [MIPS] VSMP: Fix initialization ordering bug. 2007-07-04 15:53:16 +01:00
smp.c sched: zap the migration init / cache-hot balancing code 2007-07-09 18:51:57 +02:00
smtc-asm.S [MIPS] SMTC: Don't set and restore irqregs ptr from self_ipi. 2007-06-11 18:20:53 +01:00
smtc-proc.c [MIPS] MT: Improved multithreading support. 2006-04-19 04:14:28 +02:00
smtc.c [MIPS] Count timer interrupts correctly. 2007-06-26 19:57:34 +02:00
stacktrace.c simplify the stacktrace code 2007-05-08 11:14:58 -07:00
syscall.c header cleaning: don't include smp_lock.h when not used 2007-05-08 11:15:07 -07:00
sysirix.c [MIPS] Whitespace cleanups. 2007-02-06 16:53:19 +00:00
time.c [MIPS] Don't drag a platform specific header into generic arch code. 2007-06-20 22:27:10 +01:00
topology.c [MIPS] Do topology_init even on uniprocessor kernels. 2006-11-29 16:21:34 +00:00
traps.c [MIPS] Fix timer/performance interrupt detection 2007-07-06 16:17:11 +01:00
unaligned.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00
vmlinux.lds.S all-archs: consolidate .data section definition in asm-generic 2007-05-19 09:11:57 +02:00
vpe.c [MIPS] AP/SP: Avoid triggering the 34K E125 performance issue 2007-07-06 16:17:10 +01:00