lkml.org 
[lkml]   [2006]   [Mar]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] sched: smpnice try to wakeup modification
Peter,

If there is no load on this_cpu, (i.e. tl_per_task is 0), we will fail the
"tl + target_load(cpu, idx) <= tl_per_task" check. I think the original intention was
to put task on this_cpu if it has no load and when there's already one task on
cpu. This helps spread tasks out for low load condition.

Thanks.

Tim

Signed-off-by: Tim Chen <tim.c.chen@linux.intel.com>

--- linux-2.6.16-mm2-a/kernel/sched.c 2006-03-28 16:00:37.091779904 -0800
+++ linux-2.6.16-mm2-b/kernel/sched.c 2006-03-28 16:09:08.237074008 -0800
@@ -1393,7 +1393,7 @@ static int try_to_wake_up(task_t *p, uns

if (this_sd->flags & SD_WAKE_AFFINE) {
unsigned long tl = this_load;
- unsigned long tl_per_task = cpu_avg_load_per_task(this_cpu);
+ unsigned long sl_per_task = cpu_avg_load_per_task(cpu);

/*
* If sync wakeup then subtract the (maximum possible)
@@ -1404,7 +1404,7 @@ static int try_to_wake_up(task_t *p, uns
tl -= current->load_weight;

if ((tl <= load &&
- tl + target_load(cpu, idx) <= tl_per_task) ||
+ tl + target_load(cpu, idx) <= sl_per_task) ||
100*(tl + p->load_weight) <= imbalance*load) {
/*
* This domain has SD_WAKE_AFFINE and
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-03-29 05:21    [W:0.150 / U:0.340 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site