aboutsummaryrefslogtreecommitdiffstats
path: root/mm/filemap.c
diff options
context:
space:
mode:
authorPeter Zijlstra <peterz@infradead.org>2007-07-08 04:13:06 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-07-08 13:13:21 -0400
commit4e99325b462ba18075768582621af74a6b79d2a5 (patch)
treec10d5cca6c42dda86faa3881e406475d8d645764 /mm/filemap.c
parent95511ad4342cd094e62c807f6631b9a19cc6b129 (diff)
mm: double mark_page_accessed() in read_cache_page_async()
Fix a post-2.6.21 regression. read_cache_page_async() has two invocations of mark_page_accessed() which will launch pages right onto the active list. Remove the first one, keeping the latter one. This avoids marking unwanted pages active (in the retry loop). Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> Acked-by: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/filemap.c')
-rw-r--r--mm/filemap.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/mm/filemap.c b/mm/filemap.c
index edb1b0b5cc8d..d1d9814f99dd 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -1786,7 +1786,6 @@ retry:
1786 page = __read_cache_page(mapping, index, filler, data); 1786 page = __read_cache_page(mapping, index, filler, data);
1787 if (IS_ERR(page)) 1787 if (IS_ERR(page))
1788 return page; 1788 return page;
1789 mark_page_accessed(page);
1790 if (PageUptodate(page)) 1789 if (PageUptodate(page))
1791 goto out; 1790 goto out;
1792 1791