Re: [BUG] cpu controller can't provide fair CPU time for each group

From: Peter Zijlstra
Date: Tue Nov 10 2009 - 04:49:10 EST


On Tue, 2009-11-03 at 11:26 +0900, Miao Xie wrote:
> Hi, Peter.
>
> I found two problems about cpu controller:
> 1) cpu controller didn't provide fair CPU time to groups when the tasks
> attached into those groups were bound to the same logic CPU.
> 2) cpu controller didn't provide fair CPU time to groups when shares of
> each group <= 2 * nr_cpus.
3) if you nest them too deep you're too going to see similar funnies.

Too sodding bad gcc messed up unsigned long long for LP64 mode, so we're
stuck with 64bit fixed point math where otherwise we could have used
128bit things.

Also, I don't really care much about fairness vs affinity, if you're
going to constrain the load-balancer and make his life impossible by
using affinities you get to keep the pieces.

But you've got a point, since you can probably see the same issue (1)
with cpusets, and that is because the whole cpu-controller vs cpusets
thing was done wrong.

Someone needs to fix that if they really care.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/