Suresh Siddha
f8700df7c4
sched: fix broken SMT/MC optimizations
...
On a four package system with HT - HT load balancing optimizations were
broken. For example, if two tasks end up running on two logical threads
of one of the packages, scheduler is not able to pull one of the tasks
to a completely idle package.
In this scenario, for nice-0 tasks, imbalance calculated by scheduler
will be 512 and find_busiest_queue() will return 0 (as each cpu's load
is 1024 > imbalance and has only one task running).
Similarly MC scheduler optimizations also get fixed with this patch.
[ mingo@elte.hu: restored fair balancing by increasing the fuzz and
adding it back to the power decision, without the /2
factor. ]
Signed-off-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2007-08-23 15:18:02 +02:00
..
irq
free_irq(): fix DEBUG_SHIRQ handling
2007-08-22 19:52:44 -07:00
power
Hibernation: do not try to mark invalid PFNs as nosave
2007-08-11 15:47:40 -07:00
time
timer: remove clockevents_unregister_notifier
2007-08-11 15:47:42 -07:00
.gitignore
acct.c
Cleanup non-arch xtime uses, use get_seconds() or current_kernel_time().
2007-07-25 10:09:20 -07:00
audit.c
Freezer: make kernel threads nonfreezable by default
2007-07-17 10:23:02 -07:00
audit.h
Audit: add TTY input auditing
2007-07-16 09:05:47 -07:00
auditfilter.c
[PATCH] allow audit filtering on bit & operations
2007-07-22 09:57:02 -04:00
auditsc.c
kernel/auditsc.c: fix an off-by-one
2007-08-22 19:52:44 -07:00
capability.c
compat.c
signal/timer/event: timerfd compat code
2007-05-11 08:29:36 -07:00
configs.c
use simple_read_from_buffer in kernel/
2007-05-09 12:30:49 -07:00
cpu.c
HOTPLUG: Add CPU_DYING notifier
2007-07-16 12:05:49 +03:00
cpuset.c
usermodehelper: Tidy up waiting
2007-07-18 08:47:40 -07:00
delayacct.c
sched: update delay-accounting to use CFS's precise stats
2007-07-09 18:52:00 +02:00
die_notifier.c
dma.c
exec_domain.c
exit.c
Kill some obsolete sub-thread-ptrace stuff
2007-08-03 15:06:33 -07:00
extable.c
fork.c
mm: Remove slab destructors from kmem_cache_create().
2007-07-20 10:11:58 +09:00
futex.c
futex_unlock_pi() hurts my brain and may cause application deadlock
2007-08-22 19:52:44 -07:00
futex_compat.c
Revert "futex_requeue_pi optimization"
2007-06-18 09:48:41 -07:00
hrtimer.c
Cache xtime every call to update_wall_time
2007-07-25 10:17:44 -07:00
itimer.c
kallsyms.c
kallsyms: make KSYM_NAME_LEN include space for trailing '\0'
2007-07-17 10:23:03 -07:00
Kconfig.hz
Kconfig.preempt
[PATCH] sched: arch preempt notifier mechanism
2007-07-26 13:40:43 +02:00
kexec.c
kfifo.c
is_power_of_2: kernel/kfifo.c
2007-07-16 09:05:50 -07:00
kmod.c
kernel-doc fix for kmod.c
2007-07-26 11:33:06 -07:00
kprobes.c
fix compilation with gcc 4.2
2007-08-11 15:47:42 -07:00
ksysfs.c
FRV: Fix linkage problems
2007-07-20 12:01:34 -07:00
kthread.c
kthread: silence bogus section mismatch warning
2007-07-31 15:39:42 -07:00
latency.c
lockdep.c
lockdep debugging: give stacktrace for init_error
2007-07-19 10:04:49 -07:00
lockdep_internals.h
lockdep_proc.c
Fix leak on /proc/lockdep_stats
2007-07-31 15:39:40 -07:00
Makefile
user namespace: add the framework
2007-07-16 09:05:47 -07:00
module.c
kallsyms: make KSYM_NAME_LEN include space for trailing '\0'
2007-07-17 10:23:03 -07:00
mutex-debug.c
mutex-debug.h
mutex.c
lockstat: measure lock bouncing
2007-07-19 10:04:49 -07:00
mutex.h
nsproxy.c
mm: Remove slab destructors from kmem_cache_create().
2007-07-20 10:11:58 +09:00
panic.c
Report that kernel is tainted if there was an OOPS
2007-07-17 10:23:02 -07:00
params.c
modules: better error messages when modules fail to load due to a sysfs problem.
2007-07-30 14:25:23 -07:00
pid.c
namespace: ensure clone_flags are always stored in an unsigned long
2007-07-16 09:05:48 -07:00
posix-cpu-timers.c
sched: make posix-cpu-timers use CFS's accounting information
2007-07-09 18:51:58 +02:00
posix-timers.c
posix-timers: fix creation race
2007-08-22 19:52:46 -07:00
printk.c
fix - ensure we don't use bootconsoles after init has been released
2007-08-21 20:23:53 -07:00
profile.c
fix compilation with gcc 4.2
2007-08-11 15:47:42 -07:00
ptrace.c
coredump masking: reimplementation of dumpable using two flags
2007-07-19 10:04:46 -07:00
rcupdate.c
Add suspend-related notifications for CPU hotplug
2007-05-09 12:30:56 -07:00
rcutorture.c
Freezer: make kernel threads nonfreezable by default
2007-07-17 10:23:02 -07:00
relay.c
Fix a use after free bug in kernel->userspace relay file support
2007-07-31 15:39:42 -07:00
resource.c
rtmutex-debug.c
FUTEX: Tidy up the code
2007-07-16 09:05:49 -07:00
rtmutex-debug.h
rtmutex-tester.c
Freezer: make kernel threads nonfreezable by default
2007-07-17 10:23:02 -07:00
rtmutex.c
FUTEX: Tidy up the code
2007-07-16 09:05:49 -07:00
rtmutex.h
rtmutex_common.h
FUTEX: Tidy up the code
2007-07-16 09:05:49 -07:00
rwsem.c
lockstat: hook into spinlock_t, rwlock_t, rwsem and mutex
2007-07-19 10:04:49 -07:00
sched.c
sched: fix broken SMT/MC optimizations
2007-08-23 15:18:02 +02:00
sched_debug.c
sched: sched_clock_idle_[sleep|wakeup]_event()
2007-08-23 15:18:02 +02:00
sched_fair.c
sched: fix sleeper bonus
2007-08-12 18:08:19 +02:00
sched_idletask.c
sched: remove the 'u64 now' parameter from ->put_prev_task()
2007-08-09 11:16:49 +02:00
sched_rt.c
sched: remove the 'u64 now' parameter from ->put_prev_task()
2007-08-09 11:16:49 +02:00
sched_stats.h
[PATCH] sched: add schedstat_set() API
2007-08-02 17:41:40 +02:00
seccomp.c
make seccomp zerocost in schedule
2007-07-16 09:05:50 -07:00
signal.c
signalfd: fix interaction with posix-timers
2007-08-22 19:52:46 -07:00
softirq.c
Freezer: make kernel threads nonfreezable by default
2007-07-17 10:23:02 -07:00
softlockup.c
Freezer: make kernel threads nonfreezable by default
2007-07-17 10:23:02 -07:00
spinlock.c
lockstat: hook into spinlock_t, rwlock_t, rwsem and mutex
2007-07-19 10:04:49 -07:00
srcu.c
stacktrace.c
stop_machine.c
Fix stop_machine_run problem with naughty real time process
2007-07-16 09:05:41 -07:00
sys.c
Replace CONFIG_SOFTWARE_SUSPEND with CONFIG_HIBERNATION
2007-07-29 16:45:38 -07:00
sys_ni.c
diskquota: 32bit quota tools on 64bit architectures
2007-07-16 09:05:48 -07:00
sysctl.c
Remove double inclusion of linux/capability.h
2007-08-19 10:12:32 -07:00
taskstats.c
taskstats: add context-switch counters
2007-07-16 09:05:46 -07:00
time.c
Cleanup non-arch xtime uses, use get_seconds() or current_kernel_time().
2007-07-25 10:09:20 -07:00
timer.c
Pull ia64-clocksource into release branch
2007-07-20 11:26:47 -07:00
tsacct.c
Cleanup non-arch xtime uses, use get_seconds() or current_kernel_time().
2007-07-25 10:09:20 -07:00
uid16.c
user.c
mm: Remove slab destructors from kmem_cache_create().
2007-07-20 10:11:58 +09:00
user_namespace.c
fix create_new_namespaces() return value
2007-07-16 09:05:47 -07:00
utsname.c
namespace: ensure clone_flags are always stored in an unsigned long
2007-07-16 09:05:48 -07:00
utsname_sysctl.c
remove CONFIG_UTS_NS and CONFIG_IPC_NS
2007-07-16 09:05:47 -07:00
wait.c
Fix occurrences of "the the "
2007-05-09 08:57:56 +02:00
workqueue.c
destroy_workqueue() can livelock
2007-07-17 10:23:03 -07:00