]> err.no Git - linux-2.6/commit
sched: de-SCHED_OTHER-ize the RT path
authorGregory Haskins <ghaskins@novell.com>
Fri, 25 Jan 2008 20:08:09 +0000 (21:08 +0100)
committerIngo Molnar <mingo@elte.hu>
Fri, 25 Jan 2008 20:08:09 +0000 (21:08 +0100)
commite7693a362ec84bb5b6fd441d8a8b4b9d568a7a0c
tree078940540641a59aaf199695bfc6de3f062a987b
parent697f0a487f294e634a342764472b79375bb3158a
sched: de-SCHED_OTHER-ize the RT path

The current wake-up code path tries to determine if it can optimize the
wake-up to "this_cpu" by computing load calculations.  The problem is that
these calculations are only relevant to SCHED_OTHER tasks where load is king.
For RT tasks, priority is king.  So the load calculation is completely wasted
bandwidth.

Therefore, we create a new sched_class interface to help with
pre-wakeup routing decisions and move the load calculation as a function
of CFS task's class.

Signed-off-by: Gregory Haskins <ghaskins@novell.com>
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/sched.h
kernel/sched.c
kernel/sched_fair.c
kernel/sched_idletask.c
kernel/sched_rt.c