Re: [PATCH v3 02/11] memcg: document cgroup dirty memory interfaces

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 20 Oct 2010 09:11:09 +0900
KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote:

> On Tue, 19 Oct 2010 14:00:58 -0700
> Greg Thelen <gthelen@xxxxxxxxxx> wrote:
> 
(snip)
> > +When use_hierarchy=0, each cgroup has independent dirty memory usage and limits.
> > +
> > +When use_hierarchy=1, a parent cgroup increasing its dirty memory usage will
> > +compare its total_dirty memory (which includes sum of all child cgroup dirty
> > +memory) to its dirty limits.  This keeps a parent from explicitly exceeding its
> > +dirty limits.  However, a child cgroup can increase its dirty usage without
> > +considering the parent's dirty limits.  Thus the parent's total_dirty can exceed
> > +the parent's dirty limits as a child dirties pages.
> 
> Hmm. in short, dirty_ratio in use_hierarchy=1 doesn't work as an user expects.
> Is this a spec. or a current implementation ?
> 
> I think as following.
>  - add a limitation as "At setting chidlren's dirty_ratio, it must be below parent's.
>    If it exceeds parent's dirty_ratio, EINVAL is returned."
> 
> Could you modify setting memory.dirty_ratio code ?
> Then, parent's dirty_ratio will never exceeds its own. (If I understand correctly.)
> 
> "memory.dirty_limit_in_bytes" will be a bit more complecated, but I think you can.
> 
I agree.

At the first impression, this limitation seems a bit overkill for me, because
we allow memory.limit_in_bytes of a child bigger than that of parent now.
But considering more, the situation is different, because usage_in_bytes never
exceeds limit_in_bytes.


Thanks,
Daisuke Nishimura.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxxx  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]