Peter Williams wrote:
The logical value to use for the average load per task on a run queue
without any runnable tasks is the "default" load for a nice==0 task.
Failure to do this may lead to anomalies in try_to_wake_up(), etc.
Signed-off-by: Peter Williams <[email protected]>
I missed a bit. Here's a fixed patch.
Signed-off-by: Peter Williams <[email protected]>
Sorry,
Peter
--
Peter Williams [email protected]
"Learning, n. The kind of ignorance distinguishing the studious."
-- Ambrose Bierce
Index: MM-2.6.X/kernel/sched.c
===================================================================
--- MM-2.6.X.orig/kernel/sched.c 2006-02-27 17:18:12.000000000 +1100
+++ MM-2.6.X/kernel/sched.c 2006-02-27 17:53:49.000000000 +1100
@@ -1058,7 +1058,7 @@ static inline unsigned long cpu_avg_load
runqueue_t *rq = cpu_rq(cpu);
unsigned long n = rq->nr_running;
- return n ? rq->raw_weighted_load / n : rq->raw_weighted_load;
+ return n ? rq->raw_weighted_load / n : SCHED_LOAD_SCALE;
}
/*
@@ -2153,6 +2153,8 @@ find_busiest_group(struct sched_domain *
min(busiest_load_per_task, max_load);
if (this_nr_running)
this_load_per_task /= this_nr_running;
+ else
+ this_load_per_task = SCHED_LOAD_SCALE;
pwr_now += this->cpu_power *
min(this_load_per_task, this_load);
pwr_now /= SCHED_LOAD_SCALE;
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]