On Wed, Mar 15, 2017 at 07:36:48PM +0800, Yisheng Xie wrote:
> By reviewing code, I find that when enter do_try_to_free_pages, the
> may_thrash is always clear, and it will retry shrink zones to tap
> cgroup's reserves memory by setting may_thrash when the former
> shrink_zones reclaim nothing.
> 
> However, when memcg is disabled or on legacy hierarchy, or there do not
> have any memcg protected by low limit, it should not do this useless retry
> at all, for we do not have any cgroup's reserves memory to tap, and we
> have already done hard work but made no progress.
> 
> To avoid this unneeded retrying, add a new field in scan_control named
> memcg_low_protection, set it if there is any memcg protected by low limit
> and only do the retry when memcg_low_protection is set while may_thrash
> is clear.
> 
> Signed-off-by: Yisheng Xie <xieyishe...@huawei.com>
> Suggested-by: Michal Hocko <mho...@kernel.org>
> Suggested-by: Shakeel Butt <shake...@google.com>
> Reviewed-by: Shakeel Butt <shake...@google.com>

I don't see the point of this patch. It adds more code just to
marginally optimize a near-OOM cold path.

Reply via email to