Novinky pro Linux 5.17: konec 3DNow! i oprava zranitelnosti x86 SLS

17. 12. 2021
Doba čtení: 4 minuty

Sdílet

 Autor: Depositphotos
Druhá část přehledu novinek v Linuxu 5.17 připomíná vývoj kolem 3DNow! a Ext4, přidává dění kolem čipů Apple M1 a doplňuje záplaty pro x86 SLS chybu a vylepšení přichystaná pro GPU společnosti Intel.

Vylepšení pro grafická jádra i karty Intel

minulém dílu jsme zmínili podporu variabilní obnovovací frekvence u integrovaných GPU v generaci Intel Ice Lake. Dnes si na seznam věcí, které přináší daný pull request přidejme opravu vytuhávání GPU u rozličných médií a OpenGL úloh, které postihovaly integrovaná GPU generací procesorů Intel od Skylake (Gen9) výš – tedy cca od roku 2015 dodnes.

Samozřejmostí je pokračující příprava na samostatné grafické karty společnosti Intel, které se rýsují na obzoru (v tuto chvíli zejména DG2 Alchemist, resp. typ GPU Xe HP). Uživatelé GNOME ocení opravu pro běh GNOME Shellu s GPU rodiny Tiger Lake (Gen12). Intel dále ve svém kódu pracuje na podpoře grafické paměti a konkrétně pak také správě paměti TTM pro tyto nové grafiky (a také pozdější použití s integrovanými GPU). Zkrátka je toho poměrně dost, co shrnuje v pull requestu vývojář Tvrtko Ursulin z Intelu.

Oprava pro zranitelnost x86 SLS

Zranitelnost x86 Straight-Line Speculation dozná s jádrem 5.17 řešení. Pracovali na ní jak lidé od jádra, tak lidé zabývající se kompilátory. Oprava řeší podobný problém jako dříve u ARMu, nyní se však soustředí na platformu procesorů AMD a Intel. Problém se týká toho, jak dané procesory spekulativně vykonávají instrukce lineárně uložené v paměti po změně řídícího toku.

GCC 12 již opravu před časem dostalo, podobně i LLVM/Clang, kompilátory přidávají volbu typu -mharden-sls, která vše řeší. Linuxová strana pak víceméně s novými patchi dostává podporu téhož jako volby u kernelových buildů. Podmínkou je GCC 12 či Clang 14 a vyšší, a dále aktivní záplata Retpolines. Oprava byla zaslána do jádra, kde by se měla stát součástí verze 5.17 (a jistě lze dodat, že by toto mohlo „probublat“ i do starších LTS kernelů. Podrobnosti shrnuje Phoronix, případně kód na kernelovém Gitu.

Více Apple M1 a také M1 Pro a M1 Max

Svižným tempem pokračují práce na rozklíčování architektonických nuancí ARM SoC Apple poslední generace. Tvůrci z projektu Asahu Linux tentokrát už vrhli síly i na obě vyšší verze řady M1, které přišly na svět nedávno spolu s novými Macbooky a které se přeci jen architektonicky od původního čipu M1 liší (psali jsme o tom blíže doslova před pár dny, něco jsme též minule uvedli k původnímu M1).

Nově víme, že do (přes)příští verze linuxového jádra zamíří pro M1 i ovladač pro řadič Apple SPI. Ten bude odvozen od ovladače pro SiFive, přičemž tato úprava byla úspěšně otestována s opatchovanou verzí ovladače klávesnice s Apple SPI. Lidé z Asahi Linuxu však jedním dechem dodávají, že pro Apple SPI klávesnici je v plánu napsání ovladače nového.

Dále pak byla vytvořena již třetí verze patchů pro podporu SimpleDRM, kterýžto kód je nyní dobře fungující alternativou k prostému SimpleFB. Nadále ale platí, že GPU část generace Apple M1 není plně podporována a práce stále probíhají, i samotný ovladač pro běh s Direct Rendering Manager je stále vývojovou verzí. No a v neposlední řadě do jádra míří patche pro Apple PMU (Power Management Unit).

Ext4 a nové API pro připojování oddílů

V týdnu jsme vydali zprávičku informující o tom, že starý dobrý souborový systém Ext4 bude od Linuxu 5.17 používat nové API pro připojení oddílů. Nová připojovací sekvence pojede v sedmi dílčích krocích, více buď na Linusově GitHubu, nebo přímo v loňské přednášce Christiana Braunera od z Canonicalu, případně si lze počíst přímo ve zdrojovém kódu patchů, které před týdnem do jádra zamířily.

Odteď bez AMD 3DNow!

Kdysi dávno v 90. letech s generací procesorů K6–2 přinesla AMD vlastní nadstavbovou instrukční sadu na MMX. Nazvala ji 3DNow!, byla poměrně zajímavá a AMD tehdy dokonce zainvestovala do vývoje upravené spouštěcí binárky pro tehdy novou a velmi populární hru Quake II, kterou bylo možné s procesory AMD K6–2 (či novějšími) hrát ve vyšší kvalitě/plynulosti díky použití této instrukční sady. Intel kontroval vlastní obdobou, kterou nazval SSE a jak historie příštího zhruba čtvrt století ukázala, byl to tentokrát Intel, kdo vyhrál souboj. Připomeňme, že tu nejdůležitější bitvu o 64bitovou instrukční sadu x86 vyhrála naopak AMD, ale to už odbočuji.

ict ve školství 24

Instrukce 3DNow! podporovala AMD až do generace CPU architektury K10, tedy Phenomů X2 (jako top model zmiňme šestijádrový Phenom II X6 1100T) – šlo o na svou dobu velmi dobré procesory, kterým bychom mohli v pozdějších letech vytýkat jediné: absenci podpory instrukční sady AVX. Následná generace CPU Bulldozer z roku 2011 již 3DNow! neuměla, zato přišla s AVX. Právě proto jsou i dnes tyto letité, energeticky náročné procesory stále jakž-takž použitelné, zatímco s šestijádrovým Phenomem generace K10 si dnes poradí snad už i ten nejlevnější Celeron.

Zkrátka a dobře, 3DNow! jako relativně neúspěšný projekt neměl nikdy valné využití a v roce 2022 tomu nebude jinak. Linux 5.17 s 3DNow! skoncuje, to znamená dostupnost podpory v jádru. Napíše-li si někdo aplikaci 3DNow! využívající, je jiná věc. Vedle majitelů procesorů K6–2 a K6-III zapláčou uživatelé původních K7 Athlonů/Duronů, případně fanoušci vybraných procesorů Cyrix.

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í.