[RFC PATCH 0/3 V1 resend] mm: add new migrate type and online_movable for hotplug

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

 



This patchset adds a stable-movable-migrate-type for memory-management,
It is used for anti-fragmentation(hugepage, big-order allocation...),
hot-removal-of-memory(virtualization, power-conserve, move memory between systems
to make better utilities of memories).

it likes ZONE_MOVABLE, but it is more flexible.

o	The 1st patch fixes the allocation of CMA and do prepares
	for movable-like types.

o	The 2nd patch add a new migrate type which stands for the movable types
	which pages will not be changed to the other type.

	I chose the name MIGRATE_HOTREMOVE from MIGRATE_HOTREMOVE
	and MIGRATE_MOVABLE_STABLE, it just because the first usecase of
	this new type is for hotremove.

o	The 3th path introduces online_movable. When a memoryblock is onlined
	by "online_movable", the kernel will not have directly reference to
	the page of the memoryblock, thus we can remove that memory any time
	when needed.

	Different from ZONE_MOVABLE: it can be used for any given memroyblock.
	it can be set after boot(ZONE_MOVABLE zones are configured when booting)

Lai Jiangshan (3):
  use __rmqueue_smallest when borrow memory from MIGRATE_CMA
  add MIGRATE_HOTREMOVE type
  add online_movable

 arch/tile/mm/init.c            |    2 +-
 drivers/acpi/acpi_memhotplug.c |    3 +-
 drivers/base/memory.c          |   24 +++++++----
 include/linux/memory.h         |    1 +
 include/linux/memory_hotplug.h |    4 +-
 include/linux/mmzone.h         |   37 +++++++++++++++++
 include/linux/page-isolation.h |    2 +-
 mm/compaction.c                |    6 +-
 mm/memory-failure.c            |    8 +++-
 mm/memory_hotplug.c            |   36 +++++++++++++---
 mm/page_alloc.c                |   86 ++++++++++++++++-----------------------
 mm/vmstat.c                    |    3 +
 12 files changed, 136 insertions(+), 76 deletions(-)

-- 
1.7.4.4

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