Re: must-fix list for 2.6.0

Andrew Morton
2003-04-30T18:58:19Z

Maciej Soltysiak <solt@dns.toxicfilms.tv> wrote:
>
> > kernel/
> > -------
> >
> > - O(1) scheduler starvation, poor behaviour seems unresolved.
> >
> > Jens: "I've been running 2.5.67-mm3 on my workstation for two days, and
> > it still doesn't feel as good as 2.4. It's not a disaster like some
> > revisisons ago, but it still has occasional CPU "stalls" where it feels
> > like a process waits for half a second of so for CPU time. That's is very
> > noticable."
> Well, i had similar problems with 2.5 stalling, but now that i disabled
> preemtible kernel, it is better now. Are there no complaints about preemt?

I have not heard of any, apart from yours.

> Also there is one issue, i am not sure if this may be a kernel issue,
> but with setiathome running in a X desktop environment all apps work fine,
> but when i run openoffice, openoffice responds with 5 second delay.

That'll be the changed sched_yield() semantics.

The below patch should fix that up, but we need to decide whether the (rather
unclear) advantages of the sched_yield() change outweigh the breakage which
it caused linuxthreads applications.

diff -puN kernel/sched.c~sched_yield-hack kernel/sched.c
--- 25/kernel/sched.c~sched_yield-hack 2003-04-30 12:08:51.000000000 -0700
+++ 25-akpm/kernel/sched.c 2003-04-30 12:09:11.000000000 -0700
@@ -1992,7 +1992,7 @@ asmlinkage long sys_sched_yield(void)
*/
if (likely(!rt_task(current))) {
dequeue_task(current, array);
- enqueue_task(current, rq->expired);
+ enqueue_task(current, array);
} else {
list_del(&current->run_list);
list_add_tail(&current->run_list, array->queue + current->prio);

_