Messages in this thread | | | Date | Thu, 30 Oct 2014 11:25:02 -0400 | From | Tejun Heo <> | Subject | Re: Cache Allocation Technology Design |
| |
Hello, Peter.
On Thu, Oct 30, 2014 at 02:19:04PM +0100, Peter Zijlstra wrote: > On Thu, Oct 30, 2014 at 08:44:40AM -0400, Tejun Heo wrote: > > On Thu, Oct 30, 2014 at 08:14:24AM +0100, Peter Zijlstra wrote: > > > On Thu, Oct 30, 2014 at 08:07:25AM +0100, Peter Zijlstra wrote: > > > > > and always allow execution of member tasks. > > > > > > This too btw is not strictly speaking possible for all controllers. Most > > > all sched controllers live by the grace of forcing tasks not to run at > > > times (eg. the bandwidth controls), falsifying the 'always'. > > > > Oh sure, the a task just has to run in a foreseeable future, or > > rather, a task must not be blocked indefinitely requiring userland > > intervention to become executable again. > > Like the freezer cgroup you mean? ;-)
Oh yeah, that's horribly broken. Merging it with jobctl stop is a todo item. This "stuck in a random place in kernel" thing made sense for suspend/hibernation only because the kernel wasn't gonna run anymore. The fact that this got exposed to userland on a running system just shows how little we were thinking while implementing all the controllers. It should be equivalent to layered job control stop so that what's prevented from running is the userland part, not kernel.
Thanks.
-- tejun
| |