Re: Real-Time Preemption, -RT-2.6.12-final-V0.7.50-24

Ingo Molnar
2005-07-03T18:16:11Z

* Ingo Molnar <mingo@elte.hu> wrote:

> > A few things are left working (but not enough to get the system back):
> >
> > - Mouse pointer (movements are chunky) and window focus.
> > - Mouse scroll wheel can still scroll xterms and switch workspaces.
> > - SysRq-B
>
> hm, i can reproduce a variant of this, by starting enough 'dd' tasks.
> (it needed more than two on a 2-way/4-way HT testbox though) Indeed
> everything seems to be starved, but SysRq still worked so i was able
> to SysRq-kIll all tasks and thus the system recovered.
>
> i'm debugging this now.

ok, found a bug that could explain the situation: mutex sleeps+wakeups
were incorrectly credited as 'interactive sleep' periods, causing the dd
processes to be boosted incorrectly. The dd processes created a workload
in which they blocked each other in such a pattern that they got boosted
periodically, starving pretty much every other task.

the fix is significant and affects alot of workloads, and should further
improve interactivity in noticeable ways. I'm not 100% sure it solves
all the starvation problems (e.g. how could normal-prio dd tasks starve
the SCHED_FIFO irq threads that drove SysRq?), but the results so far
look promising.

i've uploaded the -50-45 patch, can you under this kernel trigger a
'meltdown' on your SMT box?

Ingo