Re: [patch] CFS scheduler, -v15

From: Balbir Singh
Date: Wed Jun 06 2007 - 06:39:43 EST


Dmitry Adamushko wrote:
> On 06/06/07, Srivatsa Vaddagiri <vatsa@xxxxxxxxxx> wrote:
>> On Wed, Jun 06, 2007 at 09:01:43AM +0200, Ingo Molnar wrote:
>> > [...] and my tree already contains the fixes for rt task's
>> > exec_start.
>>
>> Can I have this snapshot pls? I have to deal with the same issue when
>> the current task switches groups and I was planning to fix it by
>> introducing a set_curr_task() method in fair_sched_class which
>> initializes exec_start and other fields for that task.
>
> Hum.. what about accounting 'exec_time' and updating 'exec_start' in
> rt_sched :: dequeue_task_rt() instead (like update_curr() does it in
> dequeue_task_fair())?
>
> This way, on RT -> NORMAL transition.. some 'delta_exec' ( between
> deactivate_task() ---> activate_task() ) will be accounted later as if
> the task was 'sched_fair_class' during this time.. which I think makes
> some sense. What do you think?
>

Why not do it explicitly in __setscheduler() if the new policy is SCHED_NORMAL
or SCHED_BATCH. You could also add the smarts to deactivate_task()

> sched_setscheduler()
> {
> ...
> on_rq = p->on_rq;
> if (on_rq)
> deactivate_task(rq, p, 0);
> oldprio = p->prio;
> __setscheduler(rq, p, policy, param->sched_priority);
> if (on_rq) {
> activate_task(rq, p, 0);
> ...
>
>
>> --
>> Regards,
>> vatsa
>>
>


--
Warm Regards,
Balbir Singh
Linux Technology Center
IBM, ISTL
-
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/