[PATCH 0/3] mm/memory_hotplug: fixes for memory hotplug altmap support

Sumanth Korikkar posted 3 patches 2 years ago
There is a newer version of this series
drivers/base/memory.c    | 18 +++++++++++++++---
include/linux/memremap.h | 12 ------------
include/linux/mm.h       | 15 +++++++++++++++
mm/memory_hotplug.c      | 15 +++++++--------
mm/memremap.c            | 14 +-------------
mm/sparse-vmemmap.c      | 13 +++++++++++++
6 files changed, 51 insertions(+), 36 deletions(-)
[PATCH 0/3] mm/memory_hotplug: fixes for memory hotplug altmap support
Posted by Sumanth Korikkar 2 years ago
Patch 1  adds  the missing lock  in memory hotplug operations,
ensuring that the mem_hotplug_lock is held during critical operations
like mhp_init_memmap_on_memory() and mhp_deinit_memmap_on_memory()

Patch 2 deals with error handling in add_memory_resource() and considers
the possibility of altmap support. This ensures proper deallocation of
struct pages, aligning with the allocation strategy.

Patch 3 relocates the vmem_altmap code to sparse-vmemmap.c, enabling the
utilization of vmem_altmap_free() and vmem_altmap_offset() without the
dependency on CONFIG_ZONE_DEVICE.

Changes since patch series "implement "memmap on memory" feature on
s390":
Feedback from David:
Patch 1:
* Fixed subject for memory hotplug lock.
* Added locking comments before
  memory_block_online()/memory_block_offline().
Patch 2:
* Fixed Fixes-by commit.

lkp report:
Patch 3:
* when CONFIG_SPARSEMEM_VMEMMAP is disabled, resolve
  undefined reference to `vmem_altmap_offset' error.
* Request for Reviewed-by once again due to the change in patch3.

Thank you

Sumanth Korikkar (3):
  mm/memory_hotplug: add missing mem_hotplug_lock
  mm/memory_hotplug: fix error handling in add_memory_resource()
  mm: use vmem_altmap code without CONFIG_ZONE_DEVICE

 drivers/base/memory.c    | 18 +++++++++++++++---
 include/linux/memremap.h | 12 ------------
 include/linux/mm.h       | 15 +++++++++++++++
 mm/memory_hotplug.c      | 15 +++++++--------
 mm/memremap.c            | 14 +-------------
 mm/sparse-vmemmap.c      | 13 +++++++++++++
 6 files changed, 51 insertions(+), 36 deletions(-)

-- 
2.41.0