Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933476AbZLMBbn (ORCPT ); Sat, 12 Dec 2009 20:31:43 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S933465AbZLMBbm (ORCPT ); Sat, 12 Dec 2009 20:31:42 -0500 Received: from rcpt-expgw.biglobe.ne.jp ([133.205.19.68]:38733 "HELO rcpt-expgw.biglobe.ne.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with SMTP id S933463AbZLMBbl convert rfc822-to-8bit (ORCPT ); Sat, 12 Dec 2009 20:31:41 -0500 X-Biglobe-Sender: Date: Sun, 13 Dec 2009 10:30:21 +0900 From: Daisuke Nishimura To: "Kirill A. Shutemov" Cc: containers@lists.linux-foundation.org, linux-mm@kvack.org, Paul Menage , Li Zefan , Andrew Morton , KAMEZAWA Hiroyuki , Balbir Singh , Pavel Emelyanov , Dan Malek , Vladislav Buzov , linux-kernel@vger.kernel.org, Daisuke Nishimura Subject: Re: [PATCH RFC v2 3/4] memcg: rework usage of stats by soft limit Message-Id: <20091213103021.405374b4.d-nishimura@mtf.biglobe.ne.jp> In-Reply-To: References: <747ea0ec22b9348208c80f86f7a813728bf8e50a.1260571675.git.kirill@shutemov.name> <20091212125046.14df3134.d-nishimura@mtf.biglobe.ne.jp> <20091212233409.60da66fb.d-nishimura@mtf.biglobe.ne.jp> Reply-To: nishimura@mxp.nes.nec.co.jp X-Mailer: Sylpheed 2.7.1 (GTK+ 2.18.3; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT X-MIME-Autoconverted: from 8bit to quoted-printable by rcpt-expgw.biglobe.ne.jp id nBD1UL2v007581 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2142 Lines: 55 On Sat, 12 Dec 2009 21:46:08 +0200 "Kirill A. Shutemov" wrote: > On Sat, Dec 12, 2009 at 4:34 PM, Daisuke Nishimura > wrote: > > On Sat, 12 Dec 2009 15:06:52 +0200 > > "Kirill A. Shutemov" wrote: > > > >> On Sat, Dec 12, 2009 at 5:50 AM, Daisuke Nishimura > >> wrote: > >> > And IIUC, it's the same for your threshold feature, right ? > >> > I think it would be better: > >> > > >> > - discard this change. > >> > - in 4/4, rename mem_cgroup_soft_limit_check to mem_cgroup_event_check, > >> >  and instead of adding a new STAT counter, do like: > >> > > >> >        if (mem_cgroup_event_check(mem)) { > >> >                mem_cgroup_update_tree(mem, page); > >> >                mem_cgroup_threshold(mem); > >> >        } > >> > >> I think that mem_cgroup_update_tree() and mem_cgroup_threshold() should be > >> run with different frequency. How to share MEM_CGROUP_STAT_EVENTS > >> between soft limits and thresholds in this case? > >> > > hmm, both softlimit and your threshold count events at the same place(charge and uncharge). > > So, I think those events can be shared. > > Is there any reason they should run in different frequency ? > > SOFTLIMIT_EVENTS_THRESH is 1000. If use the same value for thresholds, > a threshold can > be exceed on 1000*nr_cpu_id pages. It's too many. I think, that 100 is > a reasonable value. > O.K. I see. > mem_cgroup_soft_limit_check() resets MEM_CGROUP_STAT_EVENTS when it reaches > SOFTLIMIT_EVENTS_THRESH. If I will do the same thing for > THRESHOLDS_EVENTS_THRESH > (which is 100) , mem_cgroup_event_check() will never be 'true'. Any > idea how to share > MEM_CGROUP_STAT_EVENTS in this case? > It's impossible if they have different frequency as you say. Thank you for your clarification. Daisuke Nishimura. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/