Ashwin Chaugule
7602bdf2fd
[PATCH] new scheme to preempt swap token
...
The new swap token patches replace the current token traversal algo. The old
algo had a crude timeout parameter that was used to handover the token from
one task to another. This algo, transfers the token to the tasks that are in
need of the token. The urgency for the token is based on the number of times
a task is required to swap-in pages. Accordingly, the priority of a task is
incremented if it has been badly affected due to swap-outs. To ensure that
the token doesnt bounce around rapidly, the token holders are given a priority
boost. The priority of tasks is also decremented, if their rate of swap-in's
keeps reducing. This way, the condition to check whether to pre-empt the swap
token, is a matter of comparing two task's priority fields.
[akpm@osdl.org: cleanups]
Signed-off-by: Ashwin Chaugule <ashwin.chaugule@celunite.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-12-07 08:39:21 -08:00
..
irq
Don't call "note_interrupt()" with irq descriptor lock held
2006-11-22 09:32:06 -08:00
power
WorkStruct: Pass the work_struct pointer instead of context data
2006-11-22 14:55:48 +00:00
time
[PATCH] time_adjust cleared before use
2006-10-28 11:30:55 -07:00
.gitignore
acct.c
[PATCH] csa: convert CONFIG tag for extended accounting routines
2006-10-01 00:39:29 -07:00
audit.c
[PATCH] kauditd_thread warning fix
2006-10-06 08:53:39 -07:00
audit.h
auditfilter.c
[PATCH] arch filter lists with < or > should not be accepted
2006-10-04 08:31:16 -04:00
auditsc.c
[PATCH] severing skbuff.h -> highmem.h
2006-12-04 02:00:29 -05:00
capability.c
compat.c
[PATCH] Create compat_sys_migrate_pages
2006-11-03 12:27:59 -08:00
configs.c
cpu.c
[PATCH] Fix the spurious unlock_cpu_hotplug false warnings
2006-11-06 01:46:22 -08:00
cpuset.c
[PATCH] cpuset ANSI prototype
2006-10-10 15:37:23 -07:00
delayacct.c
[PATCH] lockdep: fix delayacct locking bug
2006-11-06 01:46:23 -08:00
dma.c
[PATCH] kernel-doc for kernel/dma.c
2006-10-03 08:03:41 -07:00
exec_domain.c
exit.c
[PATCH] taskstats_tgid_free: fix usage
2006-10-28 11:30:54 -07:00
extable.c
fork.c
[PATCH] new scheme to preempt swap token
2006-12-07 08:39:21 -08:00
futex.c
[PATCH] schedule removal of FUTEX_FD
2006-11-03 12:27:58 -08:00
futex_compat.c
[PATCH] __user annotations: futex
2006-10-10 15:37:22 -07:00
hrtimer.c
itimer.c
kallsyms.c
[PATCH] Create kallsyms_lookup_size_offset()
2006-10-03 08:03:41 -07:00
Kconfig.hz
Kconfig.preempt
kexec.c
kfifo.c
kmod.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
2006-12-05 14:37:56 +00:00
kprobes.c
[PATCH] kretprobe spinlock deadlock patch
2006-10-02 07:57:16 -07:00
ksysfs.c
kthread.c
WorkStruct: Pass the work_struct pointer instead of context data
2006-11-22 14:55:48 +00:00
latency.c
[PATCH] severing module.h->sched.h
2006-12-04 02:00:22 -05:00
lockdep.c
[PATCH] lockdep: fix static keys in module-allocated percpu areas
2006-11-17 11:10:37 -08:00
lockdep_internals.h
lockdep_proc.c
Makefile
[PATCH] srcu-3: RCU variant permitting read-side blocking
2006-10-04 07:55:30 -07:00
module.c
[PATCH] severing module.h->sched.h
2006-12-04 02:00:22 -05:00
mutex-debug.c
Lockdep: add lockdep_set_class_and_subclass() and lockdep_set_subclass()
2006-10-11 01:45:14 -04:00
mutex-debug.h
mutex.c
mutex.h
nsproxy.c
[PATCH] kernel/nsproxy.c: use kmemdup()
2006-10-20 10:26:44 -07:00
panic.c
params.c
pid.c
[PATCH] introduce get_task_pid() to fix unsafe get_pid()
2006-10-02 07:57:25 -07:00
posix-cpu-timers.c
[PATCH] posix-cpu-timers: prevent signal delivery starvation
2006-10-17 08:18:43 -07:00
posix-timers.c
fix file specification in comments
2006-10-03 23:01:26 +02:00
printk.c
[PATCH] Add printk_timed_ratelimit()
2006-11-03 12:27:58 -08:00
profile.c
[PATCH] bitmap: parse input from kernel and user buffers
2006-10-11 11:14:22 -07:00
ptrace.c
rcupdate.c
[PATCH] rcu: simplify/improve batch tuning
2006-10-04 07:55:31 -07:00
rcutorture.c
[PATCH] rcu: add sched torture type to rcutorture
2006-10-04 07:55:31 -07:00
relay.c
WorkStruct: make allyesconfig
2006-11-22 14:57:56 +00:00
resource.c
[PATCH] kernel-doc for kernel/resource.c
2006-10-03 08:03:41 -07:00
rtmutex-debug.c
Remove all inclusions of <linux/config.h>
2006-10-04 03:38:54 -04:00
rtmutex-debug.h
rtmutex-tester.c
Remove all inclusions of <linux/config.h>
2006-10-04 03:38:54 -04:00
rtmutex.c
rtmutex.h
rtmutex_common.h
rwsem.c
sched.c
[PATCH] readjust comments of task_timeslice for kernel doc
2006-10-20 10:26:37 -07:00
seccomp.c
signal.c
Make sure "user->sigpending" count is in sync
2006-11-04 13:03:00 -08:00
softirq.c
softlockup.c
spinlock.c
[PATCH] lockdep: spin_lock_irqsave_nested()
2006-11-25 13:28:34 -08:00
srcu.c
[PATCH] SRCU: report out-of-memory errors
2006-10-04 07:55:30 -07:00
stacktrace.c
stop_machine.c
sys.c
WorkStruct: Pass the work_struct pointer instead of context data
2006-11-22 14:55:48 +00:00
sys_ni.c
[PATCH] Create compat_sys_migrate_pages
2006-11-03 12:27:59 -08:00
sysctl.c
[PATCH] new scheme to preempt swap token
2006-12-07 08:39:21 -08:00
taskstats.c
[GENL]: Add genlmsg_put_reply() to simplify building reply headers
2006-12-02 21:22:42 -08:00
time.c
timer.c
[PATCH] kill wall_jiffies
2006-10-01 00:39:27 -07:00
tsacct.c
[PATCH] xacct_add_tsk: fix pure theoretical ->mm use-after-free
2006-10-30 12:08:41 -08:00
uid16.c
unwind.c
[PATCH] x86-64: work around gcc4 issue with -Os in Dwarf2 stack unwind
2006-11-28 20:12:59 +01:00
user.c
Fix unlikely (but possible) race condition on task->user access
2006-11-04 10:06:02 -08:00
utsname.c
[PATCH] namespaces: utsname: implement CLONE_NEWUTS flag
2006-10-02 07:57:22 -07:00
wait.c
workqueue.c
WorkStruct: Pass the work_struct pointer instead of context data
2006-11-22 14:55:48 +00:00