aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPeter Zijlstra <a.p.zijlstra@chello.nl>2008-01-25 21:08:21 +0100
committerIngo Molnar <mingo@elte.hu>2008-01-25 21:08:21 +0100
commit4bf0b77158d581c952af237aec79d0604b78fe27 (patch)
treed2500b882a4ed7e9a97e8633120a6e6aeccfa0c3
parentsched: get rid of 'new_cpu' in try_to_wake_up() (diff)
downloadlinux-dev-4bf0b77158d581c952af237aec79d0604b78fe27.tar.xz
linux-dev-4bf0b77158d581c952af237aec79d0604b78fe27.zip
sched: remove do_div() from __sched_slice()
Yanmin Zhang noticed a nice optimization: p = l * nr / nl, nl = l/g -> p = g * nr which eliminates a do_div() from __sched_period(). Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--kernel/sched_fair.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index 2208692dc4a0..10aa6e1ae3dd 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -248,8 +248,8 @@ static u64 __sched_period(unsigned long nr_running)
unsigned long nr_latency = sched_nr_latency;
if (unlikely(nr_running > nr_latency)) {
+ period = sysctl_sched_min_granularity;
period *= nr_running;
- do_div(period, nr_latency);
}
return period;