Re: [ANNOUNCE/RFC] Really Fair Scheduler

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Roman Zippel
Date: Tuesday, September 11, 2007 - 4:28 am

Hi,

On Tue, 11 Sep 2007, Mike Galbraith wrote:


Damn, I forgot that tasks which are reniced or migrate to another cpu 
need some more initialization, so the small incremental patch does that.
Thanks again for testing.

bye, Roman

Index: linux-2.6/kernel/sched_norm.c
===================================================================
--- linux-2.6.orig/kernel/sched_norm.c	2007-09-11 13:15:00.000000000 +0200
+++ linux-2.6/kernel/sched_norm.c	2007-09-11 13:13:43.000000000 +0200
@@ -326,11 +326,14 @@ static void update_curr(struct cfs_rq *c
 }
 
 static void
-enqueue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se)
+enqueue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int wakeup)
 {
 	verify_queue(cfs_rq, cfs_rq->curr != se, se);
 	cfs_rq->time_avg_min = kclock_max(cfs_rq->time_avg_min, get_time_avg(cfs_rq));
-	se->time_norm = kclock_max(cfs_rq->time_avg_min - se->req_weight_inv, se->time_norm);
+	if (likely(wakeup))
+		se->time_norm = kclock_max(cfs_rq->time_avg_min - se->req_weight_inv, se->time_norm);
+	else
+		se->time_norm = cfs_rq->time_avg_min;
 
 	cfs_rq->nr_running++;
 	cfs_rq->weight_sum += 1 << se->weight_shift;
@@ -553,7 +556,7 @@ static void enqueue_task_fair(struct rq 
 		if (se->on_rq)
 			break;
 		cfs_rq = cfs_rq_of(se);
-		enqueue_entity(cfs_rq, se);
+		enqueue_entity(cfs_rq, se, wakeup);
 	}
 }
 
@@ -813,7 +816,7 @@ static void task_new_fair(struct rq *rq,
 	rq->curr->se.time_norm -= time;
 	se->time_norm = rq->curr->se.time_norm;
 
-	enqueue_entity(cfs_rq, se);
+	enqueue_entity(cfs_rq, se, 1);
 	p->se.on_rq = 1;
 
 	cfs_rq->next = se;
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Thu Aug 30, 7:05 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Mike Galbraith, (Fri Aug 31, 2:36 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Ingo Molnar, (Fri Aug 31, 3:54 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Fri Aug 31, 6:19 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Fri Aug 31, 6:22 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Mike Galbraith, (Fri Aug 31, 6:55 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Mike Galbraith, (Fri Aug 31, 9:35 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Fri Aug 31, 11:48 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Daniel Walker, (Sat Sep 1, 5:52 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Bill Davidsen, (Sat Sep 1, 7:19 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Ingo Molnar, (Sun Sep 2, 12:20 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Satyam Sharma, (Sun Sep 2, 1:40 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Ingo Molnar, (Sun Sep 2, 2:26 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Ingo Molnar, (Sun Sep 2, 2:59 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Sun Sep 2, 7:47 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Daniel Walker, (Sun Sep 2, 8:00 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Sun Sep 2, 8:16 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Ingo Molnar, (Sun Sep 2, 8:29 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Sun Sep 2, 10:02 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Sun Sep 2, 10:16 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Ingo Molnar, (Sun Sep 2, 12:21 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Sun Sep 2, 7:58 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Mon Sep 3, 11:20 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Daniel Walker, (Mon Sep 3, 2:06 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Syren Baran, (Wed Sep 5, 8:03 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Fri Sep 7, 8:35 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Mike Galbraith, (Sat Sep 8, 12:56 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Mike Galbraith, (Sat Sep 8, 1:23 am)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Mon Sep 10, 4:23 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Mike Galbraith, (Mon Sep 10, 11:18 pm)
Re: [ANNOUNCE/RFC] Really Fair Scheduler, Roman Zippel, (Tue Sep 11, 4:28 am)