Re: [PATCH, v7] cgroups: introduce timer slack controller

From
Matt Helsley <hidden>
Date
2011-03-03 07:46:18
Also in
lkml
Reply to
Thomas Gleixner, 2011-03-02
On Wed, Mar 02, 2011 at 07:40:01PM +0100, Thomas Gleixner wrote:
On Wed, 2 Mar 2011, Kirill A. Shutsemov wrote:
<snip>
quoted
+		if (val > child->min_slack_ns)
+			tslack_write_min(cur, cft, val);
+	}
So, we can increase the value and propagate it through the groups
children, but decreasing it requires to go through all child groups
seperately. 
One goal is to restrict shrinking timer slacks so that they
cannot be less than the parent cgroup's.
When I'm trying to optimize something during runtime and chose a too
high value I need to go through hoops and loops to make it smaller
again.

Asymetric behaviour sucks always.
Well, in this case I think the asymmetry is less sucky because I don't
see any point in imposing the same restrictions on raising the timer
slack *except* this symmetry argument. But I haven't played much with
timer slacks so I don't know: Is there any case where raising the timer
slack would be harmful?

Would making the values additive solve the symmetry problem? In other words,
the "minimum" you see in a cgroups min_slack_ns file is the minimum in
addition to the minimum timer slack of its parent. Then, so long as negative
values are disallowed, you can't possibly write values that violate this
restriction. We could re-evaluate the resulting minimum timer slack internally
during writes to the file so functions using timer slack won't have to walk
the cgroup parents to calculate it but it couldn't result in EPERM...

Cheers,
	-Matt Helsley
Thread (10 messages) 10 messages, 5 authors, last reply 2011-03-04
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help