On systems with multiple memory-tiers consisting of DRAM and CXL memory,
the OOM killer is not invoked properly.
This patchset includes a fix for the issue and an enhancement that makes
the issue reproducible with numa emulation.
v4:
- remove unnecessary include of linux/node.h, suggested by Jonathan Cameron
- include linux/notifier.h for the notifier_block, suggested by Jonathan Cameron
- typo in abstruct distance value in the commit log and document
- add information about supported architectures in numa_emulation.rst
- add a code comment in can_demote()
v3: https://lore.kernel.org/linux-mm/20260108101535.50696-1-akinobu.mita@gmail.com/T
- rebase to linux-next (next-20260108), where demotion target has changed
from node id to node mask.
v2: https://lore.kernel.org/linux-mm/20251222004834.10539-1-akinobu.mita@gmail.com/T
- fix the explanation about cmdline parameter in the commit log
- add document for NUMA emulation
- describe reproducibility with !mglru in the commit log
- removed unnecessary consideration for scan control when checking demotion_nid watermarks
v1: https://lore.kernel.org/linux-mm/20251208094028.214949-1-akinobu.mita@gmail.com/T/
original report:
- https://lore.kernel.org/lkml/20251022135735.246203-1-akinobu.mita@gmail.com/T
Akinobu Mita (3):
mm: memory-tiers, numa_emu: enable to create memory tiers using fake
numa nodes
mm: numa_emu: add document for NUMA emulation
mm/vmscan: don't demote if there is not enough free memory in the
lower memory tier
Documentation/mm/index.rst | 1 +
Documentation/mm/numa_emulation.rst | 31 +++++++++++++++++++++++++++++
mm/numa_emulation.c | 26 ++++++++++++++++++++++++
mm/vmscan.c | 17 +++++++++++++++-
4 files changed, 74 insertions(+), 1 deletion(-)
create mode 100644 Documentation/mm/numa_emulation.rst
--
2.43.0