Linux 6.19

Linux 6.19

Po dvoch mesiacoch vývoja Linus Torvalds predstavil uvoľnenie jadra Linux 6.19. Medzi najvýraznejšie zmeny patrí subsystém Live Update Orchestrator, podpora PCIe Link Encryption, systémové volanie listns, režim Zero-Copy Receive v io_uring, podpora ARM rozšírenia MPAM, klp-build na generovanie live-patchov, podpora architektúry LoongArch32, QoS pre s2idle, optimalizácia subsystému auditu, Intel LASS na ochranu pred Spectre, podpora hashov SHA-3 a BLAKE2b, mechanizmus Confidential VMBus, TX-optimalizácie v sieťovom subsystéme, protokol CAN XL, API pre hardvérovú akceleráciu HDR výstupu.

V oznámení o novej verzii Linus uviedol, že nasledujúcemu vydaniu jadra bude priradené číslo 7.0, pretože sa v ramci vetvy 6.x nahromadilo dostatočne veľa vydaní na zmenu prvého čísla vo verzii (v minulosti bolo vydanie 6.0 vytvorené hneď za 5.19). Zmena číslovania je vykonaná z estetických dôvodov a je formálnym krokom, ktorý odstraňuje nepríjemnosti z dôvodu nahromadenia veľkého počtu vydaní v sérii. Linus si zo žartu poznamenal, že ho mýlia veľké čísla, na ktoré mu chýbajú prsty na rukách a nohách. Napriek tomu existuje formálny dôvod na významnú zmenu čísla verzie, pretože od začiatku nasledujúce vydanie sa podpora Rust bolo rozhodnuté presunie z experimentálnych do hlavných možností jadra.

Do novej verzie bolo zahrnutých 15657 opráv od 2237 vývojárov, veľkosť patchu je 52 MB (zmeny sa dotkli 13682 súborov, bolo pridaných 794649 riadkov kódu, odstránených 335498 riadkov). V predchádzajúcom vydaní bolo 15035 opráv od 2217 vývojárov, veľkosť patchu bola 45 MB. Približne 40% všetkých zmien v 6.19 súvisí s ovládačmi zariadení, približne 13% zmien sa týka aktualizácie kódu špecifického pre hardvérové architektúry, 12% súvisí so sieťovým zásobníkom, 5% s súborovými systémami a 3% s internými subsystémami jadra.

Hlavné novinky v jadre 6.19 (1, 2, 3):

  • Diskový subsystém, I/O a súborové systémy
    • V Btrfs procesy kontroly FS (scrub) a výmeny zariadení už neblokujú prechod systému do spánkového režimu (pred zaspaním sa uchováva stav scrub kontroly; po prebudení sa scrub kontrola pokračuje a operácia výmeny zariadení sa spúšťa znova). Do implementácie RAID56 bola pridaná podpora blokov, ktorých veľkosť presahuje veľkosť stránky pamäte. Bolo vykonané príprava na podporu fscrypt. Zlepšila sa výkonnosť práce s blokádami pri vykonávaní operácií súvisiacich so zálohovaním miesta. Pridaná podpora ioctl operácie shutdown, ktorá umožňuje previesť FS do stavu, v ktorom sa pokúša dokončiť už spustené operácie, ale blokuje všetky nové operácie.
    • Vo filesysteme Ext4 je zahrnutá podpora blokov, ktorých veľkosť presahuje veľkosť pamäťovej stránky (>4KB na systémoch x86). Použitie veľkých blokov umožňuje zvyšuje výkon vyrovnávacích operácií zápisu v priemere o 50 %, ale znižuje výkon priameho vstupu/výstupu vďaka zvýšenému času na výpočet kontrolných súm. V novej verzii tiež stavebné bloky pre vetvu dogfood, a do platformy Fuchsia optimalizácie, ktoré zvýšili priepustnosť pri vykonávaní online-defragmentácie.
    • V subsystéme FUSE bola zlepšená podpora vyrovnávacieho čítania pri použití veľkých folio stránok pamäte (large folios). Cez iomap bola realizovaná možnosť sledovať čiastočne aktuálne folianty na načítanie len tých údajov, ktoré chýbajú v pamäti.
    • V VFS bola pridaná podpora odvolateľnej delegácie riadenia adresára (recallable directory delegation), ktorá umožňuje realizovať v NFS prenesenie riadenia adresára zo servera na klienta, aby NFS klient bez dotazov na NFS server mohol samostatne sledovať stav adresára na základe lokálnej cache. Ak iný NFS klient vykoná zmeny týkajúce sa tohto adresára, delegácia riadenia bude odvolaná u prvého klienta.
    • Pre NFS bola pridaná podpora čítania v režime priameho vstupu/výstupu (direct I/O). Realizované nastavenia /sys/kernel/debug/nfsd/io_cache_read a /sys/kernel/debug/nfsd/io_cache_write na riadenie zapínania cacheovania a operácií priameho vstupu/výstupu, manipulácia s týmito nastaveniami môže znížiť náklady na strane NFS klienta pri vykonávaní veľkých operácií vstupu/výstupu.
    • V NTFS bola implementovaná podpora ioctl operácie shutdown, samostatné metriky na hodnotenie výsledkov testovania. predvolene možnosti montovania acl a prealokácie, pridaná podpora času do 1. januára 1970.
    • Pre blokových zariadení a FS je zapnuté predvolene oddelené pre každý CPU cacheovanie objektov „bio“ (Block I/O), definujúcich aktívne operácie vstupu-výstupu.
  • Pamäť a systémové služby
    • Do jadra je zahrnutá subsystem Live Update Orchestrator (LUO), umožňujúci úplné reštartovanie a aktualizovanie jadra bez zastavenia práce a bez straty stavu systému, zariadení a procesov. Subsystém LUO je založený na predtým pridanom v jadre mechanizme KHO (Kexec HandOver) a navyše k možnosti spustiť nové jadro zo starého bez straty stavu systému rieši také úlohy, ako je zachovanie stavu zariadení a operačnej pamäte, ako aj zabezpečenie kontinuity operácií súvisiacich s DMA a spracovaním prerušenia. Stav sa uchováva pred prepínaním na nové jadro a obnovuje sa po aktivácii nového jadra bez narušenia kontinuálnych operácií so zariadeniami, vykonávaných systémom a aplikáciami v užívateľskom priestore.

    • Pridané systémový volanie listns() na zobrazenie zoznamu existujúcich v systéme priestorov názvov bez potreby prechádzať /proc//ns/ pre všetky procesy.

    • Do systému asynchrónneho vstupu/výstupu io_uring bola pridaná podpora umiestnenia prvkov rôznej veľkosti v queue odosielania (SQE, Submission Queue Entry), analogicky k tomu, ako v predchádzajúcom vydaní bolo povolené zmiešanie veľkosti obsahu queue výsledkov (CQE, Completion Queue Event). Predtým museli mať všetky prvky v queue rovnakú veľkosť, čo viedlo k nadmernému využívaniu pamäte kvôli potrebe používať maximálnu veľkosť pre všetky prvky v queue.

      V io_uring bola tiež pridaná podpora mechanizmu zcrx (Zero-Copy Receive) na získavanie údajov bez kopírovania medzi jadrom a užívateľským priestorom. Bola pridaná podpora požiadaviek na rozloženie pamäte pre queue SQ (Submission Queue) a CQ (Completion Queue), čo umožňuje získať informácie o veľkosti kruhového buffera, potrebné pri užívateľskom prideľovaní pamäte pomocou značiek IORING_SETUP_NO_MMAP a IORING_MEM_REGION_TYPE_USER.

    • Na rýchle sledovanie zásobníka pomocou utilít, ako je perf, bola pridaná podpora formátu SFrame s informáciami o roztočení zásobníka volaní (unwind). SFrame už podporuje GCC a binutils, nemá žiadny dopad na výkon a na rozdiel od formátu DWARF obsahuje iba minimálny set informácií potrebných na sledovanie zásobníka.

    • Do utilíty perf bola pridaná podpora jednotného opisu metrik a udalostí vo formáte JSON, ako aj odloženého roztočenia (deferred unwinding) zásobníka volaní v užívateľskom priestore.

    • Pre procesorov AMD bol implementovaný mechanizmus podkladania údajov do cache, ktorý umožňuje zariadením vstupu/výstupu priamo podkladať údaje do L3-cache CPU bez ich predchádzajúceho umiestnenia do RAM.

    • Pridaná podpora MPAM (Rozdelenie a monitorovanie systémových prostriedkov pamäte), rozšírenie architektúry súpravy inštrukcií ARMv8-A na označovanie každého prístupu k pamäti identifikátorom sekcie (PARTID, Partition ID) a identifikátorom monitorovacej skupiny (PMG, Monitoring Group ID). V súvislosti s PARTID je možné obmedziť spotrebu zdrojov, ako je šírka pásma pamäte alebo veľkosť vyrovnávacej pamäte, aby sa zabezpečilo, že nejaká skupina úloh nezaberie všetky zdroje. V kontexte monitorovania sa kombinácia PMG a PARTID môže použiť na sledovanie spotreby pamäťových zdrojov pri určitých typoch zaťaženia.

    • V prípade núdzového ukončenia procesu po prijatí signálu môže iný proces, ktorý má pidfd ukončeného procesu, teraz určiť číslo signálu, ktoré viedlo k ukončeniu procesu.

    • Prepracovaná implementácia reštartovateľných sekvencií (restartable sequences), ktoré aplikáciám umožňujú organizovať pseudo-atomárne neprerušené vykonávanie skupiny inštrukcií (v prípade prerušenia iným vláknom sa vykoná opätovný pokus o vykonanie sekvencie). Nová implementácia sa vyznačuje vyššou výkonnosťou.

    • Pre BPF-programy boli implementované inštrukcie BPF_JMP, BPF_X a BPF_JA na vykonanie nepriameho skoku na určité miesto z tabuľky skokov. Pridaná koncepcia dynamických ukazovateľov (dynptr), umožňujúca čítať dáta zo štruktúrovaných súborov. Pridaná možnosť pripojenia ku sieťovým paketom niekoľkých bajtov s metadátami.

    • Moduly v jazyku Python, používané na spracovanie dokumentácie k jadru, boli presunuté do samostatného adresára tools/lib/python.

    • Pridaná funkcia mempool_alloc_bulk() na bezpečné pridelenie prvkov z pamäťového zoskupenia naraz pre niekoľko objektov.

    • Pokračoval prenášanie zmien z vetvy Rust-for-Linux, spojených s použitím jazyk Rust ako druhého jazyka na vývoj ovládačov a modulov jadra (podpora Rust nie je predvolene povolená a nevedie k zahrnutiu Rust medzi povinné závislosti na zostavenie jadra). V novej verzii je do jadra zabudovaná knižnica „syn“ s parserom pre kód Rust, ktorý uľahčuje písanie zložitých makier. Rozšírené možnosti knižníc kernel, pin-init a rbtree. Pridaná knižnica num s typom Integer na manipuláciu s celými číslami. Do makra module! bola pridaná podpora celočíselných parametrov. Realizovaná možnosť určiť parametre pri načítaní modulov jadra napísaných v jazyku Rust. Realizované abstrakcie pre subsystémy I2C a PWM (Modulácia šírky impulzu).

    • Pridané makro at_least (napríklad, param[at_least 7], informujúce o minimálnom povolenom veľkosti poľa predávaného funkcii. Ak bude funkcii predané pole s menším počtom prvkov, kompilátor vyhodí varovanie.

    • Súčasťou je zapnutý skript klp-build na generovanie modulov jadra, ktoré vykonávajú zmeny v bežiacom jadre (livepatch), na základe súboru s patchom. Do nástroja objtool boli pridané zmeny potrebné na vytvorenie live-patchov.

    • V Linux v užívateľskom režime (spustenie jadra ako užívateľského procesu) bola pridaná obmedzená podpora viac procesorov, ale vlákna v rámci jedného procesu zatiaľ nemôžu byť vykonávané súčasne. Začalo portovanie Linuxu v užívateľskom režime na knižnicu nolibc.

    • Pridaná podpora architektúry LoongArch32 (LA32R, LA32S) okrem LoongArch64.

    • Pridaná možnosť nastavenia QoS-limitov na intenzitu prebudenia procesora v energeticky úspornom režime s2idle (Suspend-To-Idle), zamŕzajúce vykonávanie procesov v užívateľskom priestore, ale ponechávajúce aktívne niektoré spracovateľské jednotky v jadre.

    • Pridaná podpora správy tabuliek stránok pamäte pre ovládače IOMMU (Jednotka pre správu pamäte vstupu a výstupu), vykonávajúca transláciu virtuálnych adries, viditeľných hardvérovým zariadením, na fyzické adresy, s možnosťou filtrovať operácie DMA podľa virtuálnych adries, ako aj obmedziť a izolovať operácie vstupu a výstupu.

    • V udalostiach trasovania systémových volaní bola implementovaná možnosť čítania búferov z užívateľského priestoru a zahrnutia ich obsahu (napríklad názvov súborov) do výsledku trasovania.

    • **Strážne stránky pamäte(( (guard page), ktorých prístup vyvoláva výnimku a núdzové ukončenie procesu (SIGSEGV), teraz sú označované špeciálnou značkou v súbore /proc/PID/smaps.

    • Pridaná možnosť správy veľkých stránok pamäte (transparentné obrovské stránky) v súkromnej pamäti zónovaných zariadení.

    • V zariadení zram, používanom pre komprimované uchovávanie pamäťovej swapovej oblasti, bola implementovaná podpora dávkovania viacerých štruktúr „bio“ (Block I/O) v režime dávkovania (writeback batching).

    • V súbore je zahrnutý font „Terminus 10×18“, zlepšujúci čitateľnosť informácií z konzoly na obrazovkách notebookov s priemerným rozlíšením (1440×900).

    • Významne optimalizované práca audítorské systémy — zaznamenáva sa pokles režijných nákladov o polovicu.

  • Virtualizácia a bezpečnosť
    • Pridaná podpora pre poskytované procesormi Intel možnosti pre deliteľnosť lineárneho oddelenia adresného priestoru (LASS, linear address-space separation), umožňujúceho hardvérové rozdelenie rozsahov adries používateľského priestoru a jadra na zvýšenie bezpečnosti. Adresný priestor je rozdelený podľa najvyššieho bitu adresy – polovica adresného priestoru s nastaveným najvyšším bitom je určená pre jadro, zatiaľ čo dolná polovica je pre používateľský priestor. V raných fázach vykonávania inštrukcií (v štádiu pred špekulatívnym vykonávaním) sa vykonáva kontrola oprávnenosti prístupu z používateľského priestoru k adresám s nastaveným najvyšším bitom a naopak. Takéto rozdelenie umožňuje blokovať úniky pamäte jadra do používateľského priestoru cez postranné kanály aj pri špekulatívnom vykonávaní inštrukcií, čo umožňuje použiť LASS na ochranu pred útokmi triedy Meltdown a Spectre, bez veľkých nákladov.
    • Pridaná možnosť zapnutia rozšírení zlepšenia bezpečnosti zbernice PCI Express – PCIe Link Encryption a PCIe Device Authentication, ktoré umožňujú overiť autenticitu a šifrovať komunikačný kanál medzi zariadením PCIe a virtuálnym strojom, chráneným mechanizmami Intel TDX (Trusted Domain Extensions) a AMD SEV-SNP (Secure Nested Paging). Implementované technológie neumožňujú zachytávať, analyzovať a podvádzať dáta v DMA prevádzke pri prístupe k hostiteľskému systému alebo iným zariadením.
    • Do zabudovanej kryptografickej knižnice bola pridaná podpora algoritmov SHA-3 (SHA3-224, SHA3-256, SHA3-384, SHA3-512), SHAKE128, SHAKE256 a BLAKE2b.
    • Pre LSM-moduly (Linux Security Modules) a najmä pre SELinux, bola implementovaná možnosť sledovať vytváranie deskriptorov memfd, aby sa aplikovali bezpečnostné politiky na súvisiace objekty.
    • V LSM-module IPE (Integrity Policy Enforcement), ktorý určuje celkovú politiku zabezpečenia integrity pre celý systém, bola pridaná podpora flagu AT_EXECVE_CHECK v funkcii execveat(), ktorá zahŕňa kontrolu integrity skriptu pred jeho vykonaním interpretátorom.
    • Boli pridané príkazy scoped_user_read_access(), scoped_user_write_access a scoped_user_rw_access() na obmedzený prístup k údajom v používateľskom priestore s ochranou špekulatívnych útokov.
    • Pridaná podpora mechanizmu Confidential VMBus, používaného vo hypervízore HyperV pre chránenú interakciu medzi hosťujúcim systémom, ktorý beží v dôvernom režime (so šifrovaním pamäte a izoláciou registrov na báze technológií AMD SNP a Intel TDX), a paravisorom, zodpovedajúcim za prístup k zariadeniam spracovávajúcim dôverné údaje.
    • Pridaná možnosť prenášať informácie o havarijných procesoch (na generovanie coredump) prostredníctvom mechanizmu pidfd. Identifikátor PIDFD je viazaný na konkrétny proces a nemení sa, zatiaľ čo PID môže byť priradený k inému procesu po ukončení aktuálneho procesu, ktorý je s týmto PID spojený. Použitie pidfd umožňuje blokovať vykonávanie útokmi nahradením havarijného suid-procesu iným procesom, čím sa dosiahne stav pretekania v okamihu po začiatku spracovania jadrom havarijného ukončenia, ale pred kontrolou spracovateľom v používateľskom priestore parametrov procesu.
  • Sieťový subsystém
    • Do sieťovej subsystémy boli pridané optimalizácie na zvýšenie efektivity prenosu dát (TX). Zbavenie funkcie __dev_queue_xmit() spin-zamknutia a použitie bezzamkových štruktúr llist umožnilo štvor-násobne zvýšiť výkon pri vysokom zaťažení a zdvojnásobiť intenzitu odosielania paketov pri znížení zaťaženia CPU na polovicu.
    • Poskytla možnosť odpojenia pre jednotlivé sieťové sokety systémových limitov na používanie pamäte (v tomto prípade sa budú používať spoločné limity na pamäť, stanovené pre jednotlivé kontajnery). Na ovládanie zrušení limitov bol navrhnutý sysctl net.core.bypass_prot_mem a vlajka SK_BPF_BYPASS_PROT_MEM v funkcii bpf_setsockopt.
    • Pridaná podpora rozšírenia RFC 5837, ktorý do ICMP správ Time Exceeded, vracaných pri uplynutí času života (TTL) paketov, pridáva údaje o prichádzajúcich sieťových rozhraniach pre podrobnejšie informácie pri trasovaní ciest nástrojom traceroute.
    • Pridaná podpora nepretržitého aktívneho polling (busy polling) v samostatnom vlákne jadra s cieľom extrakcie deskriptorov z RX/TX-queue pre aplikácie, ktoré vyžadujú minimálne oneskorenia.
    • Pridaná podpora protokolu CAN XL (Controller Area Network eXtended Length), kde sa veľkosť poľa s údajmi zvýšila na 2048 bajtov na zabezpečenie integrácie so sieťami TCP/IP, bola implementovaná možnosť tunelovania Ethernet rámcov a bola pridaná podpora šírkového impulzného modulovania, ktorá umožnila prenášať dáta rýchlosťou 20 Mbit/s a vyššie.
    • Pridaná podpora štruktúry sockaddr_unsized, variant štruktúry sockaddr, využívajúci pole s flexibilnými prvkami namiesto poľa pevnej veľkosti (sa_data[] namiesto sa_data[14], ktorý sa v podstate používal na odkazy na iné štruktúry väčšej veľkosti).
    • Pridaná možnosť používania funkčnosti getsockname a getpeername cez subsystém io_uring.
    • Pridané sysctl net.ipv4.tcp_rcvbuf_low_rtt a net.ipv4.tcp_comp_sack_rtt_percent na optimalizáciu TCP.
    • Pridaná podpora odkazov s prenosovou kapacitou 1600 Gbps (1.6T).
  • Zariadenie
    • Do subsystému DRM (Direct Rendering Manager) bol pridaný API na využitie hardvérových možností konverzie farieb, čo umožňuje obísť vykonávanie takýchto konverzií cez shadery alebo vykonávanie kódu na CPU. Pre zobrazenie obsahu na HDR monitore môžu teraz zložité farebné konverzie vykonávať displejové ovládače pred a po miešaní vrstiev (blending), namiesto softvérového kompozitu obsahu do finálneho zobrazovacieho buffera. Okrem zníženia režijných nákladov a spotreby energie pri organizovaní výstupu v HDR, navrhnutá funkčnosť môže byť používaná na správny prenos farieb v video alebo obrazových editoroch.
    • Pridané ovládač ethosu pre NPU Arm Ethos U65 a U85, určený na hardvérové urýchlenie vykonávania AI modelov.
    • V ovládači i915 pre GPU Lunar Lake a novšie boli pridané podpory pre hardvérové zvyšovanie ostrosti obrazu (Sharpening).
    • Pokračuje práca na drámb-drivery (Direct Rendering Manager) Xe pre GPU založené na architektúre Intel Xe, ktorá sa používa vo grafických kartách Intel rodiny Arc a integrovaných grafikách od procesorov Tiger Lake. Pridaná počiatočná podpora architektúry Xe3P, používaná v GPU Crescent Island a rodine procesorov s integrovanou grafikou Nova Lake.
    • V ovládači AMDGPU bola implementovaná plná podpora grafických kariet AMD rodiny GCN 1.0 „Southern Island“ a 1.1 „Sea Islands“, pre ktoré sa predtým používal ovládač Radeon. Ovládač AMDGPU bol uvedený na paritu s ovládačom Radeon a aktivovaný pre uvedené GPU ako predvolený. Karty GCN 1.x sa vyrábali od roku 2012 do 2019 a pokrývajú také modely ako Radeon HD 77xx/78xx/79xx/87xx/88xx/89xx, Radeon R9 280, FirePro W4000-W9000, Radeon Sky 700/900, Radeon R9 265/270/370, Radeon R9 290/390, HD 7790/8870 a iné grafické karty rodiny Radeon Rx 200/Rx 300. zvýšenia výkonu v priemere o 24%, prechod na AMDGPU umožnil implementáciu podpory grafického API Vulkan 1.3 pre tieto GPU. Okrem toho, v AMDGPU bola pridaná podpora analógových konektorov a Video Coding Engine 1.0, ako aj predvolene využívanie zásobníka DC (Display Core) pre GPU založené na mikroarchitektúre Bonaire (Radeon HD 7790).
    • V ovládači Nouveau bola implementovaná podpora hardvérového akcelerátora NVJPG, ktorý je prítomný v SoC Tegra210.
    • V ovládači Panthor bola pridaná podpora GPU Mali-G1 a prvotná podpora čipu MediaTek MT8196.
    • Pridaná podpora zvukového subsystému čipov Intel Nova Lake S, notebookov HP s HDA CS35L41, ako aj zvukových rozhraní CIX IPBLOQ HD a Onkyo SE-300PCIE.
    • Pokračuje integrácia komponentov ovládača Nova pre GPU NVIDIA vybavené GSP firmvérmi, ktoré sa používajú od série NVIDIA GeForce RTX 2000 založenej na mikroarchitektúre Turing. Ovládač je napísaný v jazyku Rust. V novej verzii začala práca na RPC a skončila. implementácia načítania koprocesora GSP (GPU System Processor).
    • Pridaná podpora ARM platforiem, SoC a zariadení: Bananapi r4 pro, LinkEase EasePi R1, Qualcomm MSM8937 (Snapdragon 430), Renesas R-Car X5H, FriendlyElec NanoPi R76S, TI AM62L, Black Sesame Technologies C1200, Aspeed AST2600, Genio 1200 EVK, grinn geniosbc-510/700, Tanix TX9 Pro, Radxa Dragon Q6A, Tinker Board 3/3S, Aquila AM69, phyBOARD-Segin-i.MX91, i.MX 95 Verdin Evaluation Kit, Toradex SMARC iMX95, VIDIA Jetson Nano 2GB, Renesas rz/g3s, Indiedroid Nova, 24 variantov plat Enclustra Mercury.
    • Bola pridaná podpora smartfónov a tabletov založených na SoC Mediatek MT6582 (Alcatel yarisxl), Nvidia Tegra124 (Xiaomi Mi Pad) a Qualcomm MSM8939 (ASUS ZenFone 2). Bola pridaná podpora notebookov na SoC Qualcomm sdm850, ako je Huawei MateBook E 2019.
    • Pridaná podpora SoC a platforiem založených na architektúre RISC-V: OrangePi R2S, OrangePi RV, Anlogic dr1v90, Tenstorrent Blackhole.

Zároveň latinskoamerická Nadácia slobodného softvéru vytvorila variantu úplne slobodného jadra 6.19 — Linux-libre 6.19-gnu, očisteného od prvkov firmvérov a ovládačov, ktoré obsahovali neslobodné komponenty alebo časti kódu, ktorých použitie obmedzil výrobca. V vydaní 6.19 bol zo zvukového subsystému SDCA odstránený kód pre načítanie binárnych firmvérov. Aktualizovaný kód čistenia blob-ov v ovládačoch Intel XE, Nova-Core, Qualcomm Iris, Venus a Q6V5, TI PRUeth, Intel iwlwifi, Marvell mwifiex, FourSemi fs210x, Realtek rt1320 a zvukových kodekoch TI tas2783. Vykonaná čistka názvov blob-ov v dts súboroch (devicetree) pre ARM čipy. Ukončená čistka ovládača STM C8SECTPFE DVB, ktorý bol odstránený z jadra.

Zdroj: linux.org.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster