K dispozici je jádro Linux-libre 6.12. Řešení licenčních problémů s ovladači Tuxedo

Latinoamerický fond svobodného softwaru vydal plně svobodnou verzi jádra Linux 6.12 – Linux-libre 6.12-gnu, vyčištěnou od prvků firmwaru a ovladačů, které obsahují nesvobodné komponenty nebo části kódu, jejichž použití je omezeno výrobcem. Kromě toho Linux-libre deaktivuje funkce jádra pro načítání externích nesvobodných komponent, které nejsou součástí dodávky jádra, a odstraňuje zmínky o použití nesvobodných komponent z dokumentace.

Pro vyčištění jádra od nesvobodných částí byl projektem Linux-libre vytvořen univerzální shell skript, který obsahuje tisíce šablon pro určení přítomnosti binárních vložek a vyloučení falešných pozitiv. Rovněž jsou k dispozici ke stažení hotové patche, vytvořené na základě použití výše zmíněného skriptu. Jádro Linux-libre je doporučeno pro použití v distribucích odpovídajících kritériím Fondu SPO pro vytváření plně svobodných distribucí GNU/Linux. Například Linux-libre se používá v takových distribucích jako Dragora Linux, Trisquel, Dyne:Bolic, gNewSense, Parabola, Musix a Kongoni.

Ve vydání Linux-libre 6.12-gnu byl přidán kód pro čištění blobů v ovladačích pro SoC CPM/QE QMC, bezdrátových čipech Realtek 8852BE-VT, bluetooth adaptérech Amlogic, síťových adaptérech amcc qt2025, senzorech aw96103/aw96105 a kodecích TI TLV320AIC31XX. Bylo provedeno další čištění blobů v ovladačích pro xHCI kontroléry Renesas a Intel ISH (Integrated Sensor Hub) HID. Byla aktualizována kód pro odstraňování blobů v ovladačích a subsystémech MHI PCI host, Adreno 620/621, r8169, Qualcomm q6v5 remoteproc, rtw8852c, rtw8922a, stejně jako v dts souborech pro ARM54 čipy TI PRU a Qualcomm. Čištění ovladačů pro bezdrátové karty ks7010 a zvukový subsystém Intel SkyLake bylo ukončeno, protože tyto ovladače byly odstraněny z jádra.

Samostatně je zmíněno odhalení v původních textech jednoho z ovladačů spustitelného objektového kódu, vygenerovaného z nepublikovaných původních textů a zabudovaného ve formě sekvence hexadecimálních čísel. Problémový ovladač není jasně pojmenován, ale soudě podle změn, je řeč o přítomnosti mikrokódu shaderu v souboru gfx_v9_4_3_cleaner_shader.h, který je součástí ovladače AMDGPU. První podobná vložka byla odhalena v jádře 6.11 a poté byla navržena jedním z vývojářů k odstranění, protože původní texty nebyly poskytnuty (vznikla situace dodání pod licencí GPL programu dostupného pouze v binární podobě). Nicméně, v jádře 6.12 byl uvedený binární kód zachován a do téhož ovladače byla přidána další podobná vložka.

Kromě toho jsou v oznámení Linux-libre 6.12 zmíněny ještě dva události:

  • Pro návrh jádra byl navržen patch, který zablokuje ovladačům pro notebooky Tuxedo přístup k subsystémům jádra, které jsou dostupné pouze pro kód pod licencí GPLv2 (EXPORT_SYMBOL_GPL). Možnost blokace byla původně zavedena za účelem omezení propojení proprietárních ovladačů s komponenty jádra Linuxu, které jsou exportovány pouze pro moduly pod licencí GPLv2, ale je úspěšně obcházena vytvářením mezivrstvových modulů, které převádějí přístup proprietárního ovladače k potřebnému API jádra. V případě ovladačů Tuxedo je situace opačná — ačkoliv ovladače Tuxedo vyvíjejí odděleně od jádra, jsou dodávány pod licencí GPLv3, která na jedné straně není kompatibilní s GPLv2, ale na druhé straně prosazuje větší svobody, například chrání před tivoizací.

    Bylo poznamenáno, že společnost Tuxedo již dlouho navrhuje změnit licenci na své ovladače, ale nadále dodávala kód pod licencí GPLv3 a přitom uváděla v kódu ovladače makro 'MODULE_LICENSE("GPL")' místo 'MODULE_LICENSE("GPL v3")' pro získání přístupu ke všem subsystémům jádra. Společnost Tuxedo souhlasila s kritikou a změnila licenci na GPLv2+ pro část svých ovladačů. Změna byla aplikována na ovladače gxtp7380, ite_8291, ite_8291_lb, ite_8297, ite_8297, stk8321, tuxedo_compatibility_check, tuxedo_nb02_nvidia_power_ctrl a tuxedo_tuxi. Více než deset ovladačů zatím nebylo převideno, protože pro změnu licence na ně je potřeba získat souhlas od externích vývojářů.

    Použití v kódu 'MODULE_LICENSE("GPL")' místo 'MODULE_LICENSE("GPL v3")' představitel Tuxedo vysvětlil nedostatečným vysvětlením v dokumentaci k jádru, že označení 'GPL' nelze použít pro licenci GPLv3. Také uvedl, že společnost má v úmyslu předat své ovladače do hlavního jádra Linuxu a za tím účelem provádí práci na jejich kompletním přepsání pod licencí GPLv2 s ohledem na požadavky na komponenty jádra.

  • Vývojáři jádra diskutují o iniciativě přidat příznak X86_BUG_OLD_MICROCODE, který signalizuje, že v systému je použita zastaralá verze mikroprogramu CPU. Po nastavení tohoto příznaku se doporučuje považovat systém za potenciálně zranitelný vůči neopraveným chybným stavům. Pokusy o srovnání stavu systému s neaktualizovaným mikroprogramem se situací s reálnými neopravenými zranitelnostmi v kódu vyvolaly kritiku od jednoho z udržovatelů projektu Linux-libre.

    Podle udržovatele Linux-libre by jádro nemělo omezovat právo uživatelů neinstalovat neověřené proprietární firmware a mikroprogramy na jejich vlastních zařízeních. Diskuse o přítomnosti zranitelností by měla být spojena s konkrétními opravami ve vybraných verzích firmwaru, a nikoli by měla označovat jakékoli systémy, na kterých není nainstalován nejnovější mikroprogram, bez zkoumání, zda se v daném systému vyskytují zranitelnosti a zda obsahuje nový firmware opravy těchto zranitelností.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster