]> www.infradead.org Git - nvme.git/commit
mm: vmscan: restore high-cpu watermark safety in kswapd
authorJohannes Weiner <hannes@cmpxchg.org>
Wed, 16 Apr 2025 13:45:39 +0000 (09:45 -0400)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 18 Apr 2025 03:10:09 +0000 (20:10 -0700)
commit38448181459e24257b40d5258afdbaa3565e8cfc
treeb46dc11af491d3160e106ab1911911e77bb7ab20
parent2db93a896fec7109302598cf45de3831340d9f53
mm: vmscan: restore high-cpu watermark safety in kswapd

Vlastimil points out that commit a211c6550efc ("mm: page_alloc:
defrag_mode kswapd/kcompactd watermarks") switched kswapd from
zone_watermark_ok_safe() to the standard, percpu-cached version of reading
free pages, thus dropping the watermark safety precautions for systems
with high CPU counts (e.g.  >212 cpus on 64G).  Restore them.

Since zone_watermark_ok_safe() is no longer the right interface, and this
was the last caller of the function anyway, open-code the
zone_page_state_snapshot() conditional and delete the function.

Link: https://lkml.kernel.org/r/20250416135142.778933-2-hannes@cmpxchg.org
Fixes: a211c6550efc ("mm: page_alloc: defrag_mode kswapd/kcompactd watermarks")
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Reported-by: Vlastimil Babka <vbabka@suse.cz>
Reviewed-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Brendan Jackman <jackmanb@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
include/linux/mmzone.h
mm/page_alloc.c
mm/vmscan.c