Hi!
I'd like to report a very severe performance regression due to
mm/vmalloc: Sync unmappings in __purge_vmap_area_lazy() in stable kernels
in v4.19.88. I believe this was included since v4.19.67. It is also in all the other LTS kernels, except 3.16.
So today I switched an x86_64 production server from v5.1.21 to v4.19.88, because we kept hitting runaway kcompactd and kswapd. Plus there was a significant increase in memory usage compared to v5.1.5. I'm still bisecting that on another production server.
The service we run is one of the largest forums in Taiwan [1]. It is a terminal-based bulletin board system running over telnet, SSH or a custom WebSocket bridge. The service itself is the one-process-per-user type of design from the old days. This means a lot of forks when there are user spikes or reconnections.
Sounds like fun :-).
I noticed that there's something vmalloc-related in 4.19.89,
Subject: [PATCH 4.19 210/243] x86/mm/32: Sync only to VMALLOC_END in vmalloc_sync_all() From: Joerg Roedel jroedel@suse.de commit 9a62d20027da3164a22244d9f022c0c987261687 upstream.
But looking at the changelog again, it may not solve the performance problem.
Best regards, Pavel