RFC mm/damon: fix DAMOS bugs in core, paddr and vaddr
Get series with b4
b4 am [email protected]Versions newest first
- v1 RFC Latest9 patches 7 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/9 | mm/damon/core: skip applying scheme if region split for quota failsmm/ | +2 | 0 replies | |
| 2/9 | mm/damon/core: initialize damos_quota_goal->last_psi_totalmm/ | +12 | 1 reply | |
| 3/9 | mm/damon/paddr: respect folio end for DAMOS_STATmm/ | +1 | 1 reply | |
| 4/9 | mm/damon/paddr: respect folio end for DAMOS actions except STATmm/ | +3 | 0 replies | |
| 5/9 | mm/damon/vaddr: respect folio end for DAMOS_STATmm/ | +4 | 1 reply | |
| 6/9 | mm/damon/vaddr: respect folio end for DAMOS_MIGRATE_{HOT,COLD}mm/ | +4 | 0 replies | |
| 7/9 | mm/damon/core: handle extreme memory state in damon_get_node_mem_bp()mm/ | +8 | 2 replies | |
| 8/9 | mm/damon/core: handle extreme memory state in get_node_memcg_used_bp()mm/ | +8 | 1 reply | |
| 9/9 | mm/damon/core: handle extreme memory state in get_in_active_mem_bp()mm/ | +1 | 1 reply |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [RFC PATCH v1.1 0/9] mm/damon: fix DAMOS bugs in core, paddr and vaddr
Fix misc bugs of DAMOS. Patch 1 make DAMOS less stress memory allocator under extreme situation. Patch 2 fixes wrong DAMOS quota auto-tuning feedback loop start point for PSI goal. Patches 3 and 4 fix wrong folios walking in DAMON_PADDR. Patches 5 and 6 fix wrong folios walking in DAMON_VADDR. Patches 7-9 handle extreme and unlikely memory situations that can cause divide by zero and underflow.
All bugs are discovered by Sashiko.
The bugs are not very critical, but better to be merged sooner than later. Since mm.git is closed for urgent changes, I aim for 7.3-rcX. I will drop the RFC tag after 7.3-rc1.
Changes from RFC
- RFC: https://lore.kernel.org/[email protected]
- Use cached pte content (patch 5 and 6).
- Handle totalram < freeram case (patch 7).
- Fix wrong function name in commit message (patch 9).
SJ Park (9):
mm/damon/core: skip applying scheme if region split for quota fails mm/damon/core: initialize damos_quota_goal->last_psi_total mm/damon/paddr: respect folio end for DAMOS_STAT mm/damon/paddr: respect folio end for DAMOS actions except STAT mm/damon/vaddr: respect folio end for DAMOS_STAT mm/damon/vaddr: respect folio end for DAMOS_MIGRATE_{HOT,COLD} mm/damon/core: handle extreme memory state in damon_get_node_mem_bp() mm/damon/core: handle extreme memory state in get_node_memcg_used_bp() mm/damon/core: handle extreme memory state in get_in_active_mem_bp()
mm/damon/core.c | 37 +++++++++++++++++++++++++++++++------ mm/damon/paddr.c | 8 ++++---- mm/damon/vaddr.c | 10 ++++++++-- 3 files changed, 43 insertions(+), 12 deletions(-)
base-commit: 481be0db7cfd092f0aea64e65ab0a9cacff88453
Signature · 1 line
2.47.3