Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=213c8af67f21c1dc0d50940b159d9521c95f3c89
Commit:     213c8af67f21c1dc0d50940b159d9521c95f3c89
Parent:     b77d69db9f4ba03b2ed17e383c2d73ca89f5ab14
Author:     Ingo Molnar <[EMAIL PROTECTED]>
AuthorDate: Tue Aug 28 12:53:24 2007 +0200
Committer:  Ingo Molnar <[EMAIL PROTECTED]>
CommitDate: Tue Aug 28 12:53:24 2007 +0200

    sched: small schedstat fix
    
    small schedstat fix: the cfs_rq->wait_runtime 'sum of all runtimes'
    statistics counters missed newly forked tasks and thus had a constant
    negative skew. Fix this.
    
    Signed-off-by: Ingo Molnar <[EMAIL PROTECTED]>
    Signed-off-by: Peter Zijlstra <[EMAIL PROTECTED]>
    Signed-off-by: Mike Galbraith <[EMAIL PROTECTED]>
---
 kernel/sched_fair.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index 0c71885..75f025d 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -1121,8 +1121,10 @@ static void task_new_fair(struct rq *rq, struct 
task_struct *p)
         * The statistical average of wait_runtime is about
         * -granularity/2, so initialize the task with that:
         */
-       if (sysctl_sched_features & SCHED_FEAT_START_DEBIT)
+       if (sysctl_sched_features & SCHED_FEAT_START_DEBIT) {
                p->se.wait_runtime = -(sched_granularity(cfs_rq) / 2);
+               schedstat_add(cfs_rq, wait_runtime, se->wait_runtime);
+       }
 
        __enqueue_entity(cfs_rq, se);
 }
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to