[PATCH RFC 0/3] mm/memory_hotplug: Factor out memory block device handling

From: David Hildenbrand
Date: Mon Apr 08 2019 - 06:12:37 EST


We only want memory block devices for memory to be onlined/offlined
(add/remove from the buddy). This is required so user space can
online/offline memory and kdump gets notified about newly onlined memory.

Only such memory has the requirement of having to span whole memory blocks.
Let's factor out creation/removal of memory block devices.

This not only allows to clean up arch_add_memory() to get rid of
want_memblock, but also reduces locking overhead and eventually allows
us to handle errors while adding memory in a nicer fashion.

Only did a quick sanity test with DIMM plug/unplug. This should be
sufficient to discuss the general approach. Patches are against
next/master.

David Hildenbrand (3):
mm/memory_hotplug: Simplify and fix check_hotplug_memory_range()
mm/memory_hotplug: Create memory block devices after arch_add_memory()
mm/memory_hotplug: Remove memory block devices before
arch_remove_memory()

drivers/base/memory.c | 108 +++++++++++++++++++++--------------------
drivers/base/node.c | 7 ++-
include/linux/memory.h | 4 +-
include/linux/node.h | 6 +--
mm/memory_hotplug.c | 38 +++++++--------
5 files changed, 81 insertions(+), 82 deletions(-)

--
2.17.2