[PATCH RFC v0 0/6] mm: proof-of-concept memory compaction without isolation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is incomplete implementation of non-isolating memory migration and
compaction. It's alive!

The main reason -- it can preserve lru order during compaction.


Also it makes implementation of migration for various types of pages: zram,
balloon, ptes, kernel stacks [ Why not? I've already migrated them accidentally
and kernel have crashed in very funny places ] much easier: owner just have to
set page->mappingw with valid method a_ops->migratepage.

---

Konstantin Khlebnikov (6):
      pagevec: segmented page vectors
      mm/migrate: move putback of old page out of unmap_and_move
      mm/cma: repalce reclaim_clean_pages_from_list with try_to_reclaim_page
      mm/migrate: page migration without page isolation
      mm/compaction: use migration without isolation
      mm/migrate: preserve lru order if possible


 include/linux/migrate.h           |    4 +
 include/linux/mm.h                |    1 
 include/linux/pagevec.h           |   48 ++++++++-
 include/trace/events/compaction.h |   12 +-
 mm/compaction.c                   |  205 +++++++++++++++++++++----------------
 mm/filemap.c                      |   20 ++++
 mm/internal.h                     |   12 +-
 mm/migrate.c                      |  141 +++++++++++++++++++++----
 mm/page_alloc.c                   |   35 ++++--
 mm/swap.c                         |   69 ++++++++++++
 mm/vmscan.c                       |   42 +-------
 11 files changed, 410 insertions(+), 179 deletions(-)

--
Konstantin

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]