[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5180B601.8080005@gmail.com>
Date: Wed, 01 May 2013 14:28:17 +0800
From: Will Huck <will.huckk@...il.com>
To: Mel Gorman <mgorman@...e.de>
CC: Alexey Lyahkov <alexey.lyashkov@...il.com>,
Andrew Perepechko <anserper@...ru>,
Robin Dong <sanbai@...bao.com>, Theodore Tso <tytso@....edu>,
Andrew Morton <akpm@...ux-foundation.org>,
Hugh Dickins <hughd@...gle.com>,
Rik van Riel <riel@...hat.com>,
Johannes Weiner <hannes@...xchg.org>,
Bernd Schubert <bernd.schubert@...tmail.fm>,
David Howells <dhowells@...hat.com>,
Trond Myklebust <Trond.Myklebust@...app.com>,
Linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Linux-ext4 <linux-ext4@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>,
Linux-mm <linux-mm@...ck.org>
Subject: Re: [RFC PATCH 0/3] Obey mark_page_accessed hint given by filesystems
Hi Mel,
On 04/30/2013 12:31 AM, Mel Gorman wrote:
> Andrew Perepechko reported a problem whereby pages are being prematurely
> evicted as the mark_page_accessed() hint is ignored for pages that are
> currently on a pagevec -- http://www.spinics.net/lists/linux-ext4/msg37340.html .
> Alexey Lyahkov and Robin Dong have also reported problems recently that
> could be due to hot pages reaching the end of the inactive list too quickly
> and be reclaimed.
Both shrink_active_list and shrink_inactive_list can call
lru_add_drain(), why the hot pages can't be mark Actived during this time?
> Rather than addressing this on a per-filesystem basis, this series aims
> to fix the mark_page_accessed() interface by deferring what LRU a page
> is added to pagevec drain time and allowing mark_page_accessed() to call
> SetPageActive on a pagevec page. This opens some important races that
> I think should be harmless but needs double checking. The races and the
> VM_BUG_ON checks that are removed are all described in patch 2.
>
> This series received only very light testing but it did not immediately
> blow up and a debugging patch confirmed that pages are now getting added
> to the active file LRU list that would previously have been added to the
> inactive list.
>
> fs/cachefiles/rdwr.c | 30 ++++++------------------
> fs/nfs/dir.c | 7 ++----
> include/linux/pagevec.h | 34 +--------------------------
> mm/swap.c | 61 ++++++++++++++++++++++++-------------------------
> mm/vmscan.c | 3 ---
> 5 files changed, 40 insertions(+), 95 deletions(-)
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists