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

From: Ingo Molnar
Date: Wed Jan 14 2009 - 07:06:22 EST



* Peter Zijlstra <peterz@xxxxxxxxxxxxx> 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...
>
> 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;
> }

mind sending a delta against the first submission? Whenever you are done
with the lunch stuff ;-)

Ingo
--
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/