From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Chinner Subject: Re: [PATCH v2 02/28] vmscan: take at least one pass with shrinkers Date: Thu, 11 Apr 2013 10:41:14 +1000 Message-ID: <20130411004114.GC10481@dastard> References: <51628412.6050803@parallels.com> <20130408090131.GB21654@lge.com> <51628877.5000701@parallels.com> <20130409005547.GC21654@lge.com> <20130409012931.GE17758@dastard> <20130409020505.GA4218@lge.com> <20130409123008.GM17758@dastard> <20130410025115.GA5872@lge.com> <20130410100752.GA10481@dastard> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: Theodore Ts'o , containers-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org, hughd-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org, Michal Hocko , Linux Memory Management List , Johannes Weiner , linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Andrew Morton , Wanpeng Li , Al Viro To: JoonSoo Kim Return-path: Content-Disposition: inline In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org List-Id: linux-fsdevel.vger.kernel.org On Wed, Apr 10, 2013 at 11:03:39PM +0900, JoonSoo Kim wrote: > Another one what I found is that they don't account "nr_reclaimed" precisely. > There is no code which check whether "current->reclaim_state" exist or not, > except prune_inode(). That's because prune_inode() can free page cache pages when the inode mapping is invalidated. Hence it accounts this in addition to the slab objects being freed. IOWs, if you have a shrinker that frees pages from the page cache, you need to do this. Last time I checked, only inode cache reclaim caused extra page cache reclaim to occur, so most (all?) other shrinkers do not need to do this. It's just another wart that we need to clean up.... Cheers, Dave. -- Dave Chinner david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org