[PATCH v4 11/11] memcg: check memcg dirty limits in page writeback

Greg Thelen gthelen at google.com
Fri Oct 29 09:06:33 PDT 2010

KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com> writes:

> On Fri, 29 Oct 2010 00:09:14 -0700
> Greg Thelen <gthelen at google.com> wrote:
>> If the current process is in a non-root memcg, then
>> balance_dirty_pages() will consider the memcg dirty limits
>> as well as the system-wide limits.  This allows different
>> cgroups to have distinct dirty limits which trigger direct
>> and background writeback at different levels.
>> Signed-off-by: Andrea Righi <arighi at develer.com>
>> Signed-off-by: Greg Thelen <gthelen at google.com>
> Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu at jp.fujitsu.com>
> Ideally, I think some comments in the code for "why we need double-check system's
> dirty limit and memcg's dirty limit" will be appreciated.

I will add to the balance_dirty_pages() comment.  It will read:
 * balance_dirty_pages() must be called by processes which are generating dirty
 * data.  It looks at the number of dirty pages in the machine and will force
 * the caller to perform writeback if the system is over `vm_dirty_ratio'.
 * If we're over `background_thresh' then the writeback threads are woken to
 * perform some writeout.  The current task may have per-memcg dirty
 * limits, which are also checked.

More information about the Containers mailing list