Commit 6d91add0 authored by Hugh Dickins's avatar Hugh Dickins Committed by Linus Torvalds

mm: add Set,ClearPageSwapCache stubs

If we add NOOP stubs for SetPageSwapCache() and ClearPageSwapCache(), then
we can remove the #ifdef CONFIG_SWAPs from mm/migrate.c.
Signed-off-by: default avatarHugh Dickins <hugh@veritas.com>
Acked-by: default avatarChristoph Lameter <cl@linux-foundation.org>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Mel Gorman <mel@csn.ul.ie>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 3c1d4378
...@@ -228,6 +228,7 @@ PAGEFLAG_FALSE(HighMem) ...@@ -228,6 +228,7 @@ PAGEFLAG_FALSE(HighMem)
PAGEFLAG(SwapCache, swapcache) PAGEFLAG(SwapCache, swapcache)
#else #else
PAGEFLAG_FALSE(SwapCache) PAGEFLAG_FALSE(SwapCache)
SETPAGEFLAG_NOOP(SwapCache) CLEARPAGEFLAG_NOOP(SwapCache)
#endif #endif
#ifdef CONFIG_UNEVICTABLE_LRU #ifdef CONFIG_UNEVICTABLE_LRU
......
...@@ -300,12 +300,10 @@ static int migrate_page_move_mapping(struct address_space *mapping, ...@@ -300,12 +300,10 @@ static int migrate_page_move_mapping(struct address_space *mapping,
* Now we know that no one else is looking at the page. * Now we know that no one else is looking at the page.
*/ */
get_page(newpage); /* add cache reference */ get_page(newpage); /* add cache reference */
#ifdef CONFIG_SWAP
if (PageSwapCache(page)) { if (PageSwapCache(page)) {
SetPageSwapCache(newpage); SetPageSwapCache(newpage);
set_page_private(newpage, page_private(page)); set_page_private(newpage, page_private(page));
} }
#endif
radix_tree_replace_slot(pslot, newpage); radix_tree_replace_slot(pslot, newpage);
...@@ -373,9 +371,7 @@ static void migrate_page_copy(struct page *newpage, struct page *page) ...@@ -373,9 +371,7 @@ static void migrate_page_copy(struct page *newpage, struct page *page)
mlock_migrate_page(newpage, page); mlock_migrate_page(newpage, page);
#ifdef CONFIG_SWAP
ClearPageSwapCache(page); ClearPageSwapCache(page);
#endif
ClearPagePrivate(page); ClearPagePrivate(page);
set_page_private(page, 0); set_page_private(page, 0);
/* page->mapping contains a flag for PageAnon() */ /* page->mapping contains a flag for PageAnon() */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment