Comment 57 for bug 838811

Revision history for this message
Doug Smythies (dsmythies) wrote :

see also bug 985661 ( https://bugs.launchpad.net/ubuntu/+source/linux/+bug/985661 )

I made a kernel with the patch taken out and verified, basically 0 load average (which we already know load averages are always at or near 0 no matter what the real load is undet these conditions.)
I also verified my patch version2 behaves the same (version 2 is the one I escalated to kernel.org, but it got changed to cover a code path condition that my computers never take)

I went back even further to my patch version 1 (see posting way 23 above), and while it does better under these low load but high frequency enter/exit idle conditons, it still isn't very good (I'll try to post a graph tomorrow).

The root issue/challenge is still one of signal aliaising with the 10 ticks grace period stuff that allows for catch up due to long idle periods. Under the current structure of this part of the sched.c code, I am not sure that a solution to cover all conditions is possible in a tickless kernel. The code is also extremely difficult to follow. I do not understand why the code treats going into idle differently than exiting idle. To my way of thinking the code should be completely symetric in that regard. Anyway, I will continue to work on it.