[PATCH v6 0/4] mm, hwpoison: improve handling workload related to hugetlb and memory_hotplug

From: Naoya Horiguchi
Date: Thu Oct 06 2022 - 21:08:05 EST


Hi,

This patchset tries to solve the issue among memory_hotplug, hugetlb and hwpoison.
In this patchset, memory hotplug handles hwpoison pages like below:

- hwpoison pages should not prevent memory hotremove,
- memory block with hwpoison pages should not be onlined.

Changes in this version:

- applied comments for previous versions (thank you, reviewers),
- fixed a few build errors (sorry for making noises on linux-next),
- unpoison_memory() properly cancels per-memblk hwpoison counter,
- rebased onto akpm/mm-unstable on Oct 4.

Thanks,
Naoya Horiguchi

v1: https://lore.kernel.org/linux-mm/20220427042841.678351-1-naoya.horiguchi@xxxxxxxxx/T
v2: https://lore.kernel.org/linux-mm/20220905062137.1455537-1-naoya.horiguchi@xxxxxxxxx/T
v3-5: https://lore.kernel.org/linux-mm/20220921091359.25889-1-naoya.horiguchi@xxxxxxxxx/T
---
Summary:

Naoya Horiguchi (4):
mm,hwpoison,hugetlb,memory_hotplug: hotremove memory section with hwpoisoned hugepage
mm/hwpoison: move definitions of num_poisoned_pages_* to memory-failure.c
mm/hwpoison: pass pfn to num_poisoned_pages_*()
mm/hwpoison: introduce per-memory_block hwpoison counter

arch/parisc/kernel/pdt.c | 5 ++--
drivers/base/memory.c | 40 +++++++++++++++++++++++++++
include/linux/hugetlb.h | 10 ++++---
include/linux/memory.h | 3 ++
include/linux/mm.h | 29 ++++++++++++++++++--
include/linux/swapops.h | 24 ++--------------
mm/hugetlb.c | 9 +++---
mm/internal.h | 8 ------
mm/memory-failure.c | 71 +++++++++++++++++++++++++++---------------------
mm/sparse.c | 2 --
10 files changed, 125 insertions(+), 76 deletions(-)