Hlavní navigace

Kernel panic s QR v Linuxu 6.12, neshody Rust vývojářů se správci částí jádra

1. 9. 2024
Doba čtení: 4 minuty

Sdílet

KDE Plasma 6.1 Autor: David Ježek, podle licence: CC BY-SA 4.0
Šest týdnů do uvedení Plasmy 6.2, známe poslední novinky, Microsoft vylepšuje D3D12 akceleraci videa v Mesa, VKD3D 1.13 též vylepšuje Direct3D 12 API nad Vulkanem, QR kernel panic postavený na Rustu.

VKD3D 1.13 vylepšuje Direct3D 12 API nad Vulkanem

Projekt Wine s vydáním nové verze VKD3D 1.13 opět vylepšuje tuto vrstvu mapující API volání Direct3D 12 na API volání Vulkan. Nově do HLSL kompilátoru přibyla podpora loop unrollingu, pro některé stavové objekty verze 4.0+ (mimo jiné ComputeShader, DomainShader, GeometryShader a HullShader) je zde podpora v efektovém kompilátoru a opraveno je několik chyb. Podrobnosti shrnuje GitLab projektu.

Neshody mezi vývojáři Rust kódu a správci C kódu jádra

David Airlie z Red Hatu se na svém blogu zamýšlí nad tím, co vlastně znamená příchod kódu psaného v Rustu do linuxového jádra. Reaguje tak na nejnovější bouře ve sklenici vody kolem přítomnosti Rust kódu v jádru. Osobně považuje Rust pro Linux („r4l“) za věc, která již některé své cesty našla, některé musí najít, zkrátka hotel je postaven a teď je potřeba k němu přivést silnici. Proces budování silnic je ale obvykle zdlouhavý a složitější a frustraci vyvolává zejména nutná komunikace se správci častí jádra. Phoronix v tomto kontextu připomíná postěžování si Asahi Liny z Asahi Linuxu ohledně adopce Rust kódu Linuxem a tření, které vyvolává součinnost se správci částí jádra.

Část C-čkových vývojářů jádra má házet aktivně klacky pod nohy snaze o nasazení Rustu, činit život správců Rustu tak složitý, jak jen to je možné, uvádí Lina. Jednoduchou věc, kód pro DRM abstrakce se podařilo prosadit až po roce obstrukcí. Abstrakce scheduleru DRM psané v Rustu pak naráží na problémy se zabezpečením paměti, které jsou dle Liny dány špatným návrhem pod nimi běžícího C kódu. Potřebné věci nemají dokumentaci a reakce probíhají ve stylu „napiš svůj ovladač jako amdgpu, aby to fungovalo, jinak …“. Liny ovladač ale není typově jako amdgpu, nemůže takovým způsobem pracovat a když se pokusila do upstreamu poslat drobné opravy kódu v C, aby chování bylo více robustní, správce příslušné části tento kód zablokoval s tím, že by „měla dělat, co ostatní ovladače dělají“. A když se snažila poukázat na to, že i jiné ovladače na problém špatného návrhu narážejí, nehnulo to s ním.

Phoronix uzavírá konstatováním, že na brzké řešení to nevypadá.

Týden v KDE: začalo šest týdnů do uvedení Plasmy 6.2

Plasma 6.2 má za sebou soft freeze, poslední drobnosti jsou přidány a je spuštěn odpočet do jejího podzimního vydání, které proběhne za zhruba měsíc a půl. Nate Graham ve svém pravidelném přehledu vyzdvihuje, jak se v poslední době podařilo srazit počet nevyřešených hlášení o chybách, včetně nepotvrzených, na letitá minima.

Novinek je tedy už poskrovnu. Nově lze třeba blokovat snahu aplikací o potlačení nastavení spánku / uzamčení obrazovky. Nově instalované widgety Plasmy jsou první hodinu od své instalace v seznamu nahoře a označeny příznakem Nové pro snadnější nalezení. Ručně nastavený avatar uživatele v Nastavení systému lze oříznout dle potřeby. Discover nově něžně vede uživatele při psaní recenzí tak, aby neproprietární aplikace měly korektně napsané recenze, tedy například v hodnocení aplikace se nepromítala nekvalita balíčku dané distribuce apod. Do notifikací bylo přidáno každoroční upozornění, žádost o uživatelský příspěvek na vývoj projektu KDE (lze nastavit volitelný, jednou ročně, či zcela vypnout).

Několik vylepšení je implementováno v rámci prací na uživatelském rozhraní. Na přání mnoha uživatelů se do Overview v KWin navrací linearizovaná reprezentace dvoudimensionálního uspořádání virtuálních desktopů (2×2, 3×3 atd.), namísto jejich skrývání. I systémová lišta Plasmy pak používá lepší uspořádání mřížky prvků v rozšířeném zobrazení, kde je více prostoru pro texty (speciálně se to kladně projevuje u němčiny a ruštiny). Přepracováno je rozhraní pro nastavení přístupnosti v Nastavení systému. Widget “Minimize All” nově minimalizuje / „odminializovává“ okna na aktuální virtuální obrazovce, ne všude. Na mnoha místech Plasmy a Nastavení systému proběhly drobné úpravy v zarovnání textů a popisků. Dialogová okna pak mají opět nové ikony, tentokrát zase o něco hezčí a více sedící do Breeze.

Opravena je řada chyb, z těch s vysokou prioritou v tuto chvíli zbývají pouze dvě.

CS24 tip temata

Microsoft dále vylepšuje D3D12 akceleraci videa v Mesa

V rámci prací na podpoře Windows Subsystem for Linux opět vývojáři Microsoftu vylepšili podporu Direct3D 12 akcelerace v rámci Mesa, tentokrát v oblasti videa. Nejnověji přidali do Mesa podporu pro přímou správu DPB (Decoded Picture Buffer) pro D3D12 video akceleraci v rámci příslušného Gallium3D ovladače. S vylepšením by mělo dojít k poklesu používané paměti jak ovladačem, tak vlastní aplikací alokující DPB buffery. Podrobnosti shrnuje merge request na GitLabu projektu Mesa.

Potvrzeno: Linux 6.12 přinese volitelný QR kód při kernel panicu

Pokud systému běžícímu na jádru Linux 6.12 právě toto jádro zpanikaří, bude možné si nechat vypsat poslední dění pomocí QR kódu, jak je připravováno už řadu měsíců. Novinka byla nyní zaslána do vývojové větve DRM-Misc-Next a z ní do DRM-Next včas pro začlenění do Linuxu 6.12, kterému začleňovací okno začne zhruba za dva týdny. Aktuální forma podpory vypisování QR kódů je napsána v Rustu, pročež pro funkčnost je potřeba mít podporu Rustu v jádru. Věc řeší KConfig položka DRM_PANIC_SCREEN_QR_CODE a nechybí ani podpora pro specifikování URL a verze QR.

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