Re: question about scheduler 2.0 -> 2.2

Andrea Arcangeli (andrea@e-mind.com)
Mon, 3 May 1999 00:54:29 +0200 (CEST)


On Sun, 2 May 1999, R. Westbrock wrote:

>1. former member timeout in task_struct in 2.1 seems to be an extern
>parameter to calls now
>2. there has been added a function schedule_timeout

Some time ago I noticed that tsk->timeout was misused in the kernel
because we was supposing that tsk->timeout == 0 would mean no-timeout,
while instead it means that jiffy is near to wrap around.

This was the main reason why I implemented schedule_timeout() (don't
forget that it's been Ingo the first who mentioned the schedule_timeout
idea).

The nice side effect is that we taken out from schedule() some code from a
fast path and now the additional code is executed only on demand.

We also removed a unsigned long from the task struct and now we put it on
the stack only when needed.

Also the code generated by schedule_timeout() is cleaner according to me
(compared to the old tsk->timeout field).

I posted all the relevant information about schedule_timeout() on the list
at the time of the kenrel inclusion.

Andrea Arcangeli

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