Current DAMOS schemes are not considered with multiple NUMA memory nodes. For example, If we want to proactively reclaim memory of a one NUMA node, DAMON_RECLAIM has to wake up kdamond before kswapd does reclaim memory. However, since the DAMON watermarks are based on not a one NUMA memory node but total system free memory, kdamond is not waked up before invoking memory reclamation from kswapd of the target node. These patches allow for DAMON to select monitoring target either total memory or a specific NUMA memory node. --- Changes from RFC PATCH v1 (https://lore.kernel.org/all/20220218102611.31895-1-tome01@xxxxxxxxxx) - Add new metric type for NUMA node, DAMOS_WMARK_NODE_FREE_MEM_RATE - Drop commit about damon_start() - Support DAMON_LRU_SORT Jonghyeon Kim (3): mm/damon: Add new metric type and target node for watermark mm/damon: add module parameters for NUMA system mm/damon: add NUMA-awareness to DAMON modules include/linux/damon.h | 11 +++++++++-- mm/damon/core.c | 11 ++++++++--- mm/damon/lru_sort.c | 14 ++++++++++++++ mm/damon/modules-common.h | 4 +++- mm/damon/reclaim.c | 14 ++++++++++++++ mm/damon/sysfs-schemes.c | 35 +++++++++++++++++++++++++++++++++-- 6 files changed, 81 insertions(+), 8 deletions(-) -- 2.34.1