Con Kolivas
fc38ed7531
[PATCH] sched: run SCHED_NORMAL tasks with real time tasks on SMT siblings
...
The hyperthread aware nice handling currently puts to sleep any non real
time task when a real time task is running on its sibling cpu. This can
lead to prolonged starvation by having the non real time task pegged to the
cpu with load balancing not pulling that task away.
Currently we force lower priority hyperthread tasks to run a percentage of
time difference based on timeslice differences which is meaningless when
comparing real time tasks to SCHED_NORMAL tasks. We can allow non real
time tasks to run with real time tasks on the sibling up to per_cpu_gain%
if we use jiffies as a counter.
Cleanups and micro-optimisations to the relevant code section should make
it more understandable as well.
Signed-off-by: Con Kolivas <kernel@kolivas.org>
Acked-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-10 10:06:22 -07:00
..
irq
[PATCH] CHECK_IRQ_PER_CPU() to avoid dead code in __do_IRQ()
2005-09-07 16:57:29 -07:00
power
Merge linux-2.6 with linux-acpi-2.6
2005-09-08 01:45:47 -04:00
acct.c
[PATCH] largefile support for accounting
2005-09-07 16:57:31 -07:00
audit.c
[NETLINK]: Add "groups" argument to netlink_kernel_create
2005-08-29 16:01:11 -07:00
auditsc.c
capability.c
[PATCH] kernel/capability.c: add kerneldoc
2005-07-27 16:26:06 -07:00
compat.c
configs.c
cpu.c
cpuset.c
[PATCH] cpuset semaphore depth check deadlock fix
2005-09-10 10:06:21 -07:00
crash_dump.c
[PATCH] kernel/crash_dump.c: add kerneldoc
2005-07-27 16:26:06 -07:00
dma.c
exec_domain.c
exit.c
[PATCH] files: files struct with RCU
2005-09-09 13:57:55 -07:00
extable.c
fork.c
[PATCH] files: files struct with RCU
2005-09-09 13:57:55 -07:00
futex.c
[PATCH] futex: remove duplicate code
2005-09-07 16:57:33 -07:00
intermodule.c
[PATCH] introduce and use kzalloc
2005-09-07 16:57:45 -07:00
itimer.c
[PATCH] itimer fixes
2005-07-27 16:25:51 -07:00
kallsyms.c
Kconfig.hz
Kconfig.preempt
kexec.c
[PATCH] kexec: fix sparse warnings
2005-06-28 14:53:40 -07:00
kfifo.c
kmod.c
kprobes.c
[PATCH] kprobes: fix bug when probed on task and isr functions
2005-09-07 16:58:01 -07:00
ksysfs.c
kthread.c
Makefile
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
module.c
[PATCH] flush icache early when loading module
2005-09-07 16:57:26 -07:00
panic.c
[PATCH] Call emergency_reboot from panic
2005-07-26 14:35:43 -07:00
params.c
[PATCH] introduce and use kzalloc
2005-09-07 16:57:45 -07:00
pid.c
posix-cpu-timers.c
posix-timers.c
[PATCH] fix send_sigqueue() vs thread exit race
2005-09-07 16:57:33 -07:00
printk.c
[PATCH] Provide better printk() support for SMP machines
2005-09-07 16:57:18 -07:00
profile.c
[PATCH] mostly_read data section
2005-07-07 18:23:46 -07:00
ptrace.c
[PATCH] remove duplicated code from proc and ptrace
2005-09-07 16:57:43 -07:00
rcupdate.c
[PATCH] files: rcuref APIs
2005-09-09 13:57:54 -07:00
resource.c
[PATCH] introduce and use kzalloc
2005-09-07 16:57:45 -07:00
sched.c
[PATCH] sched: run SCHED_NORMAL tasks with real time tasks on SMT siblings
2005-09-10 10:06:22 -07:00
seccomp.c
signal.c
[PATCH] fix send_sigqueue() vs thread exit race
2005-09-07 16:57:33 -07:00
softirq.c
[PATCH] revert bogus softirq changes
2005-07-30 10:49:59 -07:00
softlockup.c
[PATCH] detect soft lockups
2005-09-07 16:57:17 -07:00
spinlock.c
[PATCH] spinlock consolidation
2005-09-10 10:06:21 -07:00
stop_machine.c
sys.c
[PATCH] remove a redundant variable in sys_prctl()
2005-09-07 16:57:32 -07:00
sys_ni.c
[PATCH] remove sys_set_zone_reclaim()
2005-08-01 10:03:56 -07:00
sysctl.c
[NET]: Fix sparse warnings
2005-08-29 16:01:32 -07:00
time.c
[PATCH] clean up inline static vs static inline
2005-07-27 16:26:20 -07:00
timer.c
[PATCH] optimize writer path in time_interpolator_get_counter()
2005-09-07 16:57:24 -07:00
uid16.c
user.c
[PATCH] inotify
2005-07-12 20:38:38 -07:00
wait.c
workqueue.c
[PATCH] introduce and use kzalloc
2005-09-07 16:57:45 -07:00