Re: [PATCH 0/5] Swapless page migration V2: Overview



Christoph Lameter <clameter@xxxxxxx> wrote:

Swapless Page migration V2

Currently page migration is depending on the ability to assign swap entries
to pages. However, those entries will only be to identify anonymous pages.
Page migration will not work without swap although swap space is never
really used.

That strikes me as a fairly minor limitation?

...

Efficiency of migration is increased by:

1. Avoiding useless retries
The use of migration entries avoids raising the page count in do_swap_page().
The existing approach can increase the page count between the unmapping
of the ptes for a page and the page migration page count check resulting
in having to retry migration although all accesses have been stopped.

Minor.

2. Swap entries do not have to be assigned and removed from pages.

Minor.

3. No swap space has to be setup for page migration. Page migration
will never use swap.

Minor.

The patchset will allow later patches to enable migration of VM_LOCKED vmas,
the ability to exempt vmas from page migration, and allow the implementation
of a another userland migration API for handling batches of pages.

These seem like more important justifications. Would you agree with that
judgement?

Is it not possible to implement some or all of these new things without
this work?



That all being said, this patchset is pretty low-impact:

include/linux/rmap.h | 1
include/linux/swap.h | 6
include/linux/swapops.h | 32 +++++
mm/Kconfig | 4
mm/memory.c | 6
mm/migrate.c | 242 ++++++++++++++++++++------------------
mm/rmap.c | 88 ++++---------
mm/swapfile.c | 15 --
8 files changed, 212 insertions(+), 182 deletions(-)

-
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/



Relevant Pages

  • Re: [PATCH 0/5] Direct Migration V9: Overview
    ... Page migration allows the moving of the physical location of pages between ... For swap migration the destination of the move is controlled by the allocation policy. ... The direct migration patchset extends the migration functionality to avoid going through swap. ...
    (Linux-Kernel)
  • [PATCH 0/5] Swapless page migration V2: Overview
    ... Currently page migration is depending on the ability to assign swap entries ... those entries will only be to identify anonymous pages. ... fault until the migration entry has been removed. ...
    (Linux-Kernel)
  • [PATCH 0/5] Direct Migration V9: Overview
    ... Swap migration is now in Linus tree. ... The swap migration patchset in 2.6.16-git6 works by simply evicting ...
    (Linux-Kernel)
  • [PATCH 4/7] Direct Migration V5: migrate_pages() extension
    ... Direct migration support on top of the swap based page migration facility. ... Lists of pages to be migrated are generated by scanning over ... Calling isolate_lru_page increases the references to the page ...
    (Linux-Kernel)
  • [PATCH 2/6] Direct Migration V4: migrate_pages() extension
    ... Direct migration support on top of the swap based page migration facility. ... Lists of pages to be migrated are generated by scanning over ... Calling isolate_lru_page increases the references to the page ...
    (Linux-Kernel)