Novinky v Linuxu 5.18: spousta vylepšení pro RISC-V či lepší exFAT

8. 4. 2022
Doba čtení: 3 minuty

Sdílet

 Autor: Depositphotos
RISC-V a podpora 57bit adresace paměti a CPU Idle, exFAT se soubory končícími tečkou a lepším VolumeDirty či pokračující vylepšení pro LLVM/Clang, to jsou další novinky, které přinese Linux 5.18.

Na úvod se sluší zmínit, že Linux 5.17 je tu už nějakou dobu s námi, aktuálně se nejnovější stabilní řada nachází ve verzi 5.17.1. Příští verze 5.18 (více viz 1. díl a 2. díl našeho přehledu, na které dnes navazujeme) se před pěti dny posunula do fáze RC1, takže už nečekejme žádné další novinky, nyní už probíhá jen vychytávání mušek či much.

Vylepšení pro platformu RISC-V

Otevřená procesorová architektura RISC-V dostává v IT světě a tedy i Linuxu stále více pozornosti. Do jádra tak míří další a další prvky vylepšující podporu hardwarových schopností reálných čipů na trhu.

57bitová adresace paměti

Jednou z novinek, které vylepšují běh Linuxu na platformě RISC-V (tedy například pidipočítačích SiFive, je implementace na sv57 založené virtuální paměti (5-level page tables). Ta navazuje na dřívější implementaci sv48 (4-level page tables) u RISC-V, nově tedy Linux 5.18 přinese podporu až 57bitové adresování paměti, které na RISC-V umožní provozovat systémy s daleko větším množstvím alokované paměti (s sv48 objevivším se v Linuxu 5.17 bylo možné adresovat až 128TB virtuální paměti, pro ty, kterým je to málo, přichází sv57 a s ním 57bitové adresování 4kiB bloků, podrobněji například v příslušném materiálu od RISC-V).

Ještě doplňme, že implementace sv57 zkrátka přidává úroveň adresace a systémy s podporou sv57 současně umí i sv48 atd. Obecně platí, že adresování sv57 je ve výchozím nastavení zapnuté a tam, kde není příslušná podpora, se fallbackuje na sv48, případně sv39. Podrobnosti též v příslušném pull requestu s první várkou patchů.

Podpora CPU Idle

Další várka patchů pro RISC-V přináší například podporu CPU Idle stavů, a to skrze nové rozšíření SBI (Supervisor Binary Interface – podrobněji například Atish Patra z Western Digital na FOSDEMu před třemi lety). Jak dodává Phoronix, tato implementace je inspirována designem ARMu a jeho ovladače PSCI CPU Idle. Výrazně zde do vývoje přispěl právě Western Digital [PDF]. To i další novinky shrnuje pull request druhé části patchů pro RISC-V do Linuxu 5.18.

Dvě novinky pro exFAT

Pouhé dvě novinky míří do jaderného ovladače souborového systému exFAT, ale o to významnější. První se týká úpravy chování cesty (k souborům) končící tečkou. Až dosud exFAT prostě natvrdo koncovou tečku z komponent cesty vyhazoval, nyní se pravidla uvolňují. Jeden patch mířící do exFAT v Linuxu 5.18 přidává mount volbu keep_last_dots pro exFAT oddíly. Důvod implementace je prostý: FUSE exFAT ovladač koncové tečky podporoval, zatímco kernelový ovladač nikoli. Podrobnosti jsou k dispozici v příslušném commitu.

bitcoin_skoleni

Druhý patch pro exFAT zajišťuje nemazání VolumeDirty ve writebacku, díky čemuž už nebude touto věcí krácena životnost daného úložiště (připomeňme, že exFAT je souborovým systémem používaným paměťovými kartami typu SDXC a SDUC). Až do tohoto commitu se VolumeDirty čistilo při writeback operaci, když nebyly zapnuty volby dirsync/ sync. Když pak došlo k náhlému odpojení napájení po vyčištění VolumeDirty, ale další aktualizace se už nezapsaly, u oddílů typu exFAT nebylo možné následně při dalším mountu detekovat jako „po selhání napájení“ a VolumeDirty byl nastaven znovu, nicméně nečištěn během aktualizace rodičovského adresáře. Tímto postupem docházelo k zapisování BootSectoru minimálně jednou při každé write-back operaci, což zkracovalo životnost zařízení. Patch pro 5.18 toto řeší, oba pak shrnuje příslušný pull request.

Kompilace jádra Clangem

Sice stále platí, že výrazná většina distribucí používá pro kompilace GCC, ale práce na podpoře kompilace pomocí LLVM/Clang pokračují. S jádrem 5.18 přibude další funkcionalita pro Clang, detaily shrnuje Nathan Chancellor přímo z kernel.org. V této souvislosti připomeňme, že možná nejznámější distribucí, která na LLVM/Clang sází, je OpenMandriva.

Autor článku

Příznivec open-source rád píšící i o ne-IT tématech. Odpůrce softwarových patentů a omezování občanských svobod ve prospěch korporací.