Podczas marcowego okna łączenia Linux 5.18 pisałem o dużej regresji wydajności benchmarku NUMA, którą zauważyłem i podzieliłem. Okazuje się, że była na to poprawka w formie łatki, chociaż zauważyłem ją dopiero w ten weekend i teraz udało mi się pomyślnie przetestować i zweryfikować poprawkę. Ta poprawka trafia teraz do głównego jądra.
Ta regresja Linuksa 5.18 pojawiła się jako duża regresja NUMA w Stress-NG i wyśledziłem ją do zmian w zarządzaniu pamięcią w Linuksie 5.18, a w szczególności do zmiany lru_cache_disable.
Tymczasem w zeszłym tygodniu ta zmiana MM została również przypisana do duża regresja Raspberry Pi, w której test trwał od 1,5 sekundy do ponad 7 minut.
Okazuje się, że od końca marca pojawiła się wstępna łatka autorstwa Marcelo Tosattiego z Red Hat, która ma rozwiązać problem regresji, ale niestety Nie zauważyłem e-maila do testowania poprawki. Na szczęście w ten weekend był inny ping, który przeszedł i był w stanie przeprowadzić kilka testów porównawczych.
Rzeczywiście, ta regresja NUMA została naprawiona w tej łatce.
Łatka jest tylko jednowierszową zmianą wywołania z używania sync_rcu() na sync_rcu_expedited() i jest teraz w drodze do mainline. Ta poprawka teraz przechodzi do głównego jądra poprzez poprawki MM Andrew Mortona i powinna zostać przeportowana wstecznie dla Linuksa 5.18.