[RFC PATCH 0/2] remove CONFIG_MOVABLE_NODE

From: Michal Hocko
Date: Wed May 24 2017 - 08:24:51 EST


Hi,
I am continuing to cleanup the memory hotplug code and
CONFIG_MOVABLE_NODE seems dubious at best. The following two patches
simply removes the flag and make it de-facto always enabled.

The current semantic of the config option is twofold 1) it automatically
binds hotplugable nodes to have memory in zone_movable by default when
movable_node is enabled 2) forbids memory hotplug to online all the memory
as movable when !CONFIG_MOVABLE_NODE.

The later restriction is quite dubious because there is no clear cut of
how much normal memory do we need for a reasonable system operation. A
single memory block which is sufficient to allow further movable
onlines is far from sufficient (e.g a node with >2GB and memblocks
128MB will fill up this zone with struct pages leaving nothing for
other allocations). Removing the config option will not only reduce the
configuration space it also removes quite some code.

The semantic of the movable_node command line parameter is preserved.

The first patch removes the restriction mentioned above and the second
one simply removes all the CONFIG_MOVABLE_NODE related stuff.

Shortlog
Michal Hocko (2):
mm, memory_hotplug: drop artificial restriction on online/offline
mm, memory_hotplug: drop CONFIG_MOVABLE_NODE

Diffstat:
Documentation/admin-guide/kernel-parameters.txt | 7 ++-
drivers/base/node.c | 4 --
include/linux/memblock.h | 18 -------
include/linux/nodemask.h | 4 --
mm/Kconfig | 26 -----------
mm/memblock.c | 2 -
mm/memory_hotplug.c | 62 -------------------------
mm/page_alloc.c | 2 -
8 files changed, 5 insertions(+), 120 deletions(-)