lkml.org 
[lkml]   [2005]   [Nov]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 5/8] Direct Migration V2: upgrade MPOL_MF_MOVE and sys_migrate_pages()
On Wed, 9 Nov 2005, KAMEZAWA Hiroyuki wrote:

> > We only allocate 256 pages which are on the newlist. If the newlist is empty
> > but there are still pages that could be migrated (!list_empty(pagelist))
> > then we need to allocate more pages and call migrate_pages() again.
> Ah, Okay.
>
> confirmation:
> 1. Because mm->sem is held, there is no page-is-truncated/freed case.

The page is truncated/freed case is handled by migrate_pages(). The page
is moved to the "moved" lists and then returned to the LRU. The functions
putting a page back to the LRU will check the refcount and discard the
page.

> 2. Because pages in pagelist are removed from zone's lru, kswapd and others
> will not
> find and unmap them. There is no page-is-swapedout-by-others case.

Right.

> So if all target pages are successfuly remvoed from pagelist, newlist must be
> empty.
> Right ?

It could be empty but there could be new pages left over because some
pages were freed before we could move them or we were unable to migrate a
page and fell back to swap for a particular page. We need to free the
leftover pages then.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-11-09 17:53    [W:0.034 / U:0.320 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site