Používatelia systémov využívajúcich mechanizmus zRAM na komprimované ukladanie odkladacieho oddielu v pamäti narazili na problém, ktorý spôsoboval zlyhanie spustenia po aktualizácii jadra. Linux až do verzie 6.12. Problém sa týka distribúcií Gentoo, Void a ďalších, ktoré podporujú zRAM a ponúkajú balíčky s novými verziami jadra.
Príčinou zlyhania bola zmena v jadre 6.12, ktorá pridala možnosť konfigurovať kompresné algoritmy za behu. Popri tom sa v Kconfig zmenila logika výberu dostupných kompresných algoritmov vo fáze zostavovania jadra. Táto zmena spôsobila problémy v distribúciách, ktoré sa spoliehali na predvolené nastavenia a nepovoľovali jednotlivo všetky dostupné algoritmy zRAM v konfigurácii Kconfig pre jadro 6.12.
Po aktualizácii na jadro 6.12 v takýchto distribúciách zostal dostupný na výber iba predvolený základný kompresný algoritmus a nie všetky podporované algoritmy. Preto pri pokuse o zahrnutie algoritmov do zRAM, ktoré nezodpovedali predvolenému algoritmu, došlo k zlyhaniu zavádzania. Napríklad pri výbere algoritmu lz4 pri zavádzaní sa vyskytla chyba „zramctl: /dev/zram0: nepodarilo sa nastaviť algoritmus: Neplatný argument“, pretože medzi algoritmami zostala iba podpora lzo namiesto predtým podporovaných lzo, lz4, lz4hc , 842 a zstd.
Problém je vyriešený povolením každého kompresného backendu jednotlivo v Kconfig (nastavenia CONFIG_ZRAM_BACKEND_* boli pridané do jadra 6.12): CONFIG_ZRAM_BACKEND_LZ4=y CONFIG_ZRAM_BACKEND_LZ4HC=y CONFIG_ZRAM_BACKEND_ZSTD_yZ_ACK842 CONFIGXNUMX CONFIG_ZRAM_DEF_COMP_LZO=y CONFIG_ZRAM_DEF_COMP=»lzo»
Zdroj: opennet.ru
