From: Mel Gorman Subject: Re: [PATCH 2/3] mm: Ensure that mark_page_accessed moves pages to the active list Date: Wed, 1 May 2013 09:31:39 +0100 Message-ID: <20130501083139.GH11497@suse.de> References: <1367253119-6461-1-git-send-email-mgorman@suse.de> <1367253119-6461-3-git-send-email-mgorman@suse.de> <5180AB0E.6030407@gmail.com> <20130501080644.GE11497@suse.de> <5180CED8.9040505@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-15 Cc: Sam Ben , Alexey Lyahkov , Andrew Perepechko , Robin Dong , Theodore Tso , Andrew Morton , Hugh Dickins , Rik van Riel , Johannes Weiner , Bernd Schubert , David Howells , Trond Myklebust , Linux-fsdevel , Linux-ext4 , LKML , Linux-mm To: Ric Mason Return-path: Content-Disposition: inline In-Reply-To: <5180CED8.9040505@gmail.com> Sender: owner-linux-mm@kvack.org List-Id: linux-ext4.vger.kernel.org On Wed, May 01, 2013 at 04:14:16PM +0800, Ric Mason wrote: > On 05/01/2013 04:06 PM, Mel Gorman wrote: > >On Wed, May 01, 2013 at 01:41:34PM +0800, Sam Ben wrote: > >>Hi Mel, > >>On 04/30/2013 12:31 AM, Mel Gorman wrote: > >>>If a page is on a pagevec then it is !PageLRU and mark_page_accessed() > >>>may fail to move a page to the active list as expected. Now that the > >>>LRU is selected at LRU drain time, mark pages PageActive if they are > >>>on a pagevec so it gets moved to the correct list at LRU drain time. > >>>Using a debugging patch it was found that for a simple git checkout > >>>based workload that pages were never added to the active file list in > >>Could you show us the details of your workload? > >> > >The workload is git checkouts of a fixed number of commits for the > > Is there script which you used? > mmtests with config-global-dhp__io-gitcheckout-randread-starvation . Parallel randread was to see if the random file read would push the metadata blocks out or not. I expected it would not be enough to trigger the reported problem but it would be enough to determine if file pages were getting added to the active lists or not. > >kernel git tree. It starts with a warm-up run that is not timed and then > >records the time for a number of iterations. > > How to record the time for a number of iterations? Is the iteration > here means lru scan? > /usr/bin/time -- Mel Gorman SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org