提交 3c5a87f4 编写于 作者: C Christoph Lameter 提交者: Linus Torvalds

[PATCH] migration: remove unnecessary PageSwapCache checks

Remove two unnecessary PageSwapCache checks.  The page refcount is raised
and therefore page migration cannot occur in both functions.
Signed-off-by: NChristoph Lameter <clameter@sgi.com>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: NAndrew Morton <akpm@osdl.org>
Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
上级 4776874f
......@@ -1081,14 +1081,6 @@ static int shmem_getpage(struct inode *inode, unsigned long idx,
page_cache_release(swappage);
goto repeat;
}
if (!PageSwapCache(swappage)) {
/* Page migration has occured */
shmem_swp_unmap(entry);
spin_unlock(&info->lock);
unlock_page(swappage);
page_cache_release(swappage);
goto repeat;
}
if (PageWriteback(swappage)) {
shmem_swp_unmap(entry);
spin_unlock(&info->lock);
......
......@@ -716,7 +716,6 @@ static int try_to_unuse(unsigned int type)
*/
swap_map = &si->swap_map[i];
entry = swp_entry(type, i);
again:
page = read_swap_cache_async(entry, NULL, 0);
if (!page) {
/*
......@@ -751,12 +750,6 @@ static int try_to_unuse(unsigned int type)
wait_on_page_locked(page);
wait_on_page_writeback(page);
lock_page(page);
if (!PageSwapCache(page)) {
/* Page migration has occured */
unlock_page(page);
page_cache_release(page);
goto again;
}
wait_on_page_writeback(page);
/*
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册