Messages in this thread | | | Date | Tue, 31 May 2005 10:24:58 -0700 (PDT) | From | Linus Torvalds <> | Subject | Re: Machine Freezes while Running Crossover Office |
| |
On Tue, 31 May 2005, Pekka Enberg wrote: > > On Tue, 2005-05-31 at 08:54 +0200, Ingo Molnar wrote: > > - apply the patch below and check whether doing: > > > > echo 0 > /proc/sys/kernel/interactive > > > > makes the hang go away. > > It's actually /proc/sys/vm/interactive but yes, 0 makes the hang go away > while 1 makes it come back.
Ok, it's a scheduler bug.
The pipe thing is probably implicated only because it ends up changing some timing just enough to make the interactivity tester trigger (ie doing reads/writes in bigger blocks makes the frequency of the ping-pong between wineserver and wine different, and then it ends up hitting some harmonic sweet spot with the timer that makes the scheduler believe it's interactive).
In fact, I suspect it ends up marking things "interactive" because they do sleep longer - both of the parties sleep longer because the other end ends up spending more time handling the work, since the pipe buffers are bigger (so they sleep longer because they are _awake_ longer).
Ingo, any ideas? This is bothersome, because it could hit any number of people, and we'd never have realized because it's not usually repeatable and not usually quite that extreme. But if it can trigger 15-second dead periods in very specific circumstances, it can probably trigger half-second dead periods much more easily. Things that people would assume were due to disk IO or VM badness..
Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |