On Wed, 03.07.13 19:22, Cristian Rodríguez (crrodrig...@opensuse.org) wrote:
> El 03/07/13 12:44, Lennart Poettering escribió: > > > * As discussed earlier, the low-level cgroup configuration > > options ControlGroup=, ControlGroupModify=, > > ControlGroupPersistent=, ControlGroupAttribute= have been > > removed. Please use high-level attribute settings instead as > > well as slice units. > > Among other things, the rtkit daemon needs updating then, the unit > file uses ControlGroup=cpu:/ Yeah, this certainly needs fixing, but honestly I don't even know how to do this best. Handling of RT budgets with the current kernel cgroup logic is just totally broken. The problem is this: if we add a unit to a cgroup in "cpu" (which we want to do by default), then we need to assign a fixed RT budget to it too -- if it actually wants to use RT scheduling the way rtkit does. But if we do that, then we need to assign an RT budget for the parent cgroup rtkit itself is in, too. Since the values are absolute, and need to add up we don't really know what to assign there though. Previously we simply configured rtkit to not get a cgroup in the "cpu" hierarchy. But that's actually really awful too, since then it will get the same amount of CPU as everybody else on the same cgroup tree level gets for their entire services, which is seriously skewed. Maybe we should just say that systems.slice gets 30% of the RT budget, and user.slice gets another 50%, and then rtkit gets 5% of system.slice's budget, and that's it. Arbitrary values, but we need to set something. God, I hate the progation rules of cgroups... Lennart -- Lennart Poettering - Red Hat, Inc. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel