A Fix Is On The Way For A Previously-Reported Linux 5.18 Performance Regression

That Linux 5.18 regression appeared as a big NUMA regression within Stress-NG and I tracked it down to the Linux 5.18 memory management changes and in particular a lru_cache_disable change.
Meanwhile last week that MM change was also attributed to a big Raspberry Pi regression where a test went from taking 1.5 seconds to over 7 minutes.
It turns out there has been a tentative patch by Red Hat's Marcelo Tosatti to address the regression since end of March, but unfortunately I hadn't noticed the email for testing the patch. Fortunately, there was another ping this weekend that went through and was able to run some benchmarks.
Indeed, that NUMA regression is now fixed with this patch.
The patch is just a one-liner changing a call from using synchronize_rcu() to synchronize_rcu_expedited() and is now on its way to mainline. That patch is now working its way to the mainline kernel via Andrew Morton's MM patches and should be back-ported for Linux 5.18.
3 Comments