Re: [PATCH] mm: Stop kswapd early when nothing's waiting for it to free pages

From: Dave Hansen
Date: Wed Feb 19 2020 - 14:13:25 EST


On 2/19/20 10:25 AM, Sultan Alsawaf wrote:
> Keeping kswapd running when all the failed allocations that invoked it
> are satisfied incurs a high overhead due to unnecessary page eviction
> and writeback, as well as spurious VM pressure events to various
> registered shrinkers. When kswapd doesn't need to work to make an
> allocation succeed anymore, stop it prematurely to save resources.

But kswapd isn't just to provide memory to waiters. It also serves to
get free memory back up to the high watermark. This seems like it might
result in more frequent allocation stalls and kswapd wakeups, which
consumes extra resources.

I guess I'd wonder what positive effects you have observed as a result
of this patch and whether you've gone looking for any negative effects.