summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2007-10-15 17:00:18 +0200
committerIngo Molnar <mingo@elte.hu>2007-10-15 17:00:18 +0200
commite5f32a3856caabe745381279f7f32e3b581b59dc (patch)
tree5448c1116966ba96096915e9022241638e5ab7f4
parent91c234b4e3419c786cac2d5b7a7b96443e512e3a (diff)
downloadlinux-e5f32a3856caabe745381279f7f32e3b581b59dc.tar.gz
linux-e5f32a3856caabe745381279f7f32e3b581b59dc.tar.bz2
linux-e5f32a3856caabe745381279f7f32e3b581b59dc.zip
sched: speed up context-switches a bit
speed up context-switches a bit by not clearing p->exec_start. (as a side-effect, this also makes p->exec_start a universal timestamp available to cache-hot estimations.) Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--kernel/sched_fair.c11
1 files changed, 0 insertions, 11 deletions
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index c240b72b4e62..cea1fa32b3f4 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -379,15 +379,6 @@ update_stats_curr_start(struct cfs_rq *cfs_rq, struct sched_entity *se)
se->exec_start = rq_of(cfs_rq)->clock;
}
-/*
- * We are descheduling a task - update its stats:
- */
-static inline void
-update_stats_curr_end(struct cfs_rq *cfs_rq, struct sched_entity *se)
-{
- se->exec_start = 0;
-}
-
/**************************************************
* Scheduling class queueing methods:
*/
@@ -609,8 +600,6 @@ static void put_prev_entity(struct cfs_rq *cfs_rq, struct sched_entity *prev)
if (prev->on_rq)
update_curr(cfs_rq);
- update_stats_curr_end(cfs_rq, prev);
-
check_spread(cfs_rq, prev);
if (prev->on_rq) {
update_stats_wait_start(cfs_rq, prev);