Re: [PATCH 1/2] sched: introduce avg_wakeup

From: Peter Zijlstra
Date: Wed Jan 14 2009 - 07:04:49 EST


On Wed, 2009-01-14 at 13:03 +0100, Peter Zijlstra wrote:
> On Wed, 2009-01-14 at 12:59 +0100, Peter Zijlstra wrote:
> > + /*
> > + * Only attribute actual wakeups done by this task.
> > + */
> > + if (!in_interrupt()) {
> > + struct sched_entity *se = &current->se;
> > + u64 sample = se->sum_exec_runtime;
> > +
> > + if (se->last_wakeup)
> > + sample -= se->last_wakeup;
> > + else
> > + sample -= se->start_runtime;
> > + update_avg(&se->avg_wakeup, sample);
> > +
> > + current->se.last_wakeup = current->se.sum_exec_runtime;
> > + }
>
> time for lunch apparently...

D'oh

---
Index: linux-2.6/kernel/sched.c
===================================================================
--- linux-2.6.orig/kernel/sched.c
+++ linux-2.6/kernel/sched.c
@@ -2424,7 +2424,7 @@ out_activate:
sample -= se->start_runtime;
update_avg(&se->avg_wakeup, sample);

- current->se.last_wakeup = current->se.sum_exec_runtime;
+ se->last_wakeup = se->sum_exec_runtime;
}

out_running:

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/