diff options
author | Minchan Kim <minchan.kim@gmail.com> | 2011-03-22 19:32:41 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-03-22 20:44:02 -0400 |
commit | 5adc7b518b54f7af2b8395d2035898340d96b1d5 (patch) | |
tree | a1ef2db7e2a41333861ca067bb1c6f16589044eb /mm | |
parent | 4c73b1bc6bb14aab7888ebe6bffe957cf7c07fa0 (diff) |
mm: truncate: change remove_from_page_cache
This patch series changes remove_from_page_cache()'s page ref counting
rule. Page cache ref count is decreased in delete_from_page_cache(). So
we don't need to decrease the page reference in callers.
Signed-off-by: Minchan Kim <minchan.kim@gmail.com>
Cc: Dan Magenheimer <dan.magenheimer@oracle.com>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: Nick Piggin <npiggin@kernel.dk>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: Hugh Dickins <hughd@google.com>
Acked-by: Mel Gorman <mel@csn.ul.ie>
Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Reviewed-by: Johannes Weiner <hannes@cmpxchg.org>
Reviewed-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/truncate.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/mm/truncate.c b/mm/truncate.c index d64296be00d3..7c617b5f03ee 100644 --- a/mm/truncate.c +++ b/mm/truncate.c | |||
@@ -106,9 +106,8 @@ truncate_complete_page(struct address_space *mapping, struct page *page) | |||
106 | cancel_dirty_page(page, PAGE_CACHE_SIZE); | 106 | cancel_dirty_page(page, PAGE_CACHE_SIZE); |
107 | 107 | ||
108 | clear_page_mlock(page); | 108 | clear_page_mlock(page); |
109 | remove_from_page_cache(page); | ||
110 | ClearPageMappedToDisk(page); | 109 | ClearPageMappedToDisk(page); |
111 | page_cache_release(page); /* pagecache ref */ | 110 | delete_from_page_cache(page); |
112 | return 0; | 111 | return 0; |
113 | } | 112 | } |
114 | 113 | ||