[PATCH v3 0/1] mm/page_alloc: dynamic watermark boosting
From: wujing <hidden>
Date: 2026-01-05 12:00:01
Also in:
linux-mm, lkml
This is v3 of the auto-tuning patch, addressing feedback from Vlastimil Babka, Andrew Morton, and Matthew Wilcox. Major shift in v3: Following Vlastimil's suggestion, this version abandons the direct modification of min_free_kbytes. Instead, it leverages the existing watermark_boost infrastructure. This approach is more idiomatic as it: - Avoids conflicts with administrative sysctl settings. - Only affects specific zones experiencing pressure. - Utilizes standard kswapd logic for natural decay after reclamation. Responses to Vlastimil Babka's feedback:
"Were they really packet drops observed? AFAIK the receive is deferred to non-irq context if those atomic allocations fail, it shouldn't mean a drop."
In our high-concurrency production environment, we observed that while the network stack tries to defer processing, persistent GFP_ATOMIC failures eventually lead to NIC-level drops due to RX buffer exhaustion.
"As for the implementation I'd rather not be changing min_free_kbytes directly... We already have watermark_boost to dynamically change watermarks"
Agreed and implemented in v3. Changes in v3: - Replaced min_free_kbytes modification with watermark_boost calls. - Removed all complex decay/persistence logic from v2, relying on kswapd's standard behavior. - Maintained the 10-second debounce mechanism. - Engaged netdev@ community as requested by Andrew Morton. Thanks for the thoughtful reviews! wujing (1): mm/page_alloc: auto-tune watermarks on atomic allocation failure mm/page_alloc.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) -- 2.39.5