Re: [PATCH 5/5] Swapless V2: Revise main migration logic

From: Christoph Lameter
Date: Tue Apr 18 2006 - 04:31:01 EST


On Tue, 18 Apr 2006, KAMEZAWA Hiroyuki wrote:

> On Mon, 17 Apr 2006 23:58:41 -0700 (PDT)
> Christoph Lameter <clameter@xxxxxxx> wrote:
>
> > Hmmm... Good ideas. I think it could be much simpler like the following
> > patch.
> >
> > However, the problem here is how to know that we really took the anon_vma
> > lock and what to do about a page being unmmapped while migrating. This
> > could cause the anon_vma not to be unlocked.
> >
> lock dependency here is page_lock(page) -> page's anon_vma->lock.
> So, I guess anon_vma->lock cannot be unlocked by other threads
> if we have page_lock(page).

No the problem is to know if the lock was really taken. SWAP_AGAIN could
mean that page_lock_anon_vma failed.

Also the page may be freed while it is being processes. In that case
remove_migration_ptes may not find the mapping and may not unlock the
anon_vma.

> > I guess we would need to have try_to_unmap return some state information.
> What kind of information ?

Information that indicates that the anon_vma lock was taken.

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