Dopu à dui mesi di sviluppu, Linus Torvalds hà publicatu u kernel. Linux 5.18. Frà i cambiamenti i più notevuli: una pulizia maiò di e funziunalità deprecate, a deprecazione di u sistema di fugliali Reiserfs, l'implementazione di l'eventi di tracciamentu di i prucessi di l'utilizatori, u supportu per un mecanismu per bluccà l'operazione di l'exploit Intel IBT, l'inclusione di una modalità per rilevà i buffer overflow quandu si usa a funzione memcpy(), l'aghjunta di un mecanismu per seguità e chjamate di funzione fprobe, prestazioni migliorate di u task scheduler nantu à e CPU AMD Zen, l'inclusione di un driver per a gestione di a funziunalità di e CPU Intel (SDS), l'integrazione di alcune patch per a ristrutturazione di i fugliali di intestazione è l'approvazione di u standard C11.
A nova versione include 16206 correzioni da 2127 sviluppatori (in l'ultima versione ci sò stati 14203 correzioni da 1995 sviluppatori), a dimensione di u patch hè 108 MB (i cambiamenti affettati 14235 file, 1340982 linee di codice sò state aghjunte, 593836, 44 5.18 linee sò state eliminate). Circa 16% di tutti i cambiamenti introdotti in 11 sò ligati à i driver di u dispositivu, circa 3% di i cambiamenti sò ligati à l'aghjurnamentu di codice specificu à l'architetture hardware, 3% sò ligati à a pila di rete, XNUMX% sò ligati à i sistemi di schedari, è XNUMX% sò ligati à i sottosistemi interni di u kernel.
Innuvazioni principali in u kernel 5.18:
- Sottosistema di discu, I / O è sistemi di fugliale
- U sistema di schedari Btrfs hà aghjustatu supportu per l'invio di dati cumpressi quandu eseguisce operazioni di mandatu è riceve. In precedenza, quandu si usava invià / riceve, u latu di l'inviu hà decompressatu i dati almacenati in forma cumpressa, è u latu di ricivutu l'hà ricumandatu prima di scrive. In u kernel 5.18, l'applicazioni di u spaziu di l'utilizatori chì utilizanu mandate / riceve chjamate anu datu l'abilità di trasmette dati cumpressi senza repackaging. A funziunalità hè implementata grazia à e novi operazioni ioctl BTRFS_IOC_ENCODED_READ è BTRFS_IOC_ENCODED_WRITE, chì permettenu di leghje direttamente è di scrive l'infurmazioni in quantità.
Inoltre, Btrfs migliurà u rendiment fsync. Aggiunta a capacità di deduplicate è eseguisce reflink (clonà i metadati di u schedariu creendu un ligame à e dati esistenti senza veramente copià) per tuttu u almacenamentu, micca limitatu à i punti di muntatura.
- In u modu I / O direttu, hè pussibule accede à i fugliali criptati quandu fscrypt usa a criptografia in linea, in quale l'operazioni di criptografia è decifrazione sò realizate da u controller di l'unità invece di u kernel. Cù a criptografia regulare di u kernel, l'accessu à i fugliali criptati chì utilizanu l'I/O Direct hè sempre impussibile, postu chì i fugliali sò accede à sguassate u mecanismu di buffering in u kernel.
- U servitore NFS include supportu per u protokollu NFSv3 per automaticamente, chì avà ùn hà micca bisognu di attivazione separata è hè dispunibule quandu NFS hè attivatu in generale. NFSv3 hè cunsideratu cum'è a versione principale è sempre supportata di NFS, è u supportu per NFSv2 pò esse discontinuatu in u futuru. L'efficienza di leghje u cuntenutu di u repertoriu hè stata mejorata significativamente.
- U sistema di schedari ReiserFS hè statu obsoletu è hè previstu di esse eliminatu in 2025. L'annullamentu di ReiserFS riducerà u sforzu necessariu per mantene i cambiamenti in tuttu u sistema di fugliale in relazione à u supportu per a nova API per a muntagna, iomap è tomi.
- Per u sistema di fugliale F2FS, hè stata implementata a capacità di mapà l'ID d'utilizatori di i sistemi di schedari muntati, chì hè utilizatu per paragunà i schedarii di un utilizatore specificu nantu à una partizione straniera muntata cù un altru utilizatore in u sistema attuale.
- U codice per u calculu di statistiche in i gestori di Device-mapper hè statu riformulatu, chì hà migliuratu significativamente l'accuratezza di a cuntabilità in i gestori cum'è dm-crypt.
- I dispositi NVMe supportanu oghji checksums 64-bit per a verificazione di integrità.
- Per u sistema di fugliali exfat, hè stata introdutta una nova opzione di muntatura "keep_last_dots" chì impedisce a cancellazione di i punti à a fine di un nome di fugliale (in Windows (I punti à a fine di u nome sò eliminati per difettu).
- EXT4 migliurà a prestazione di u modu fast_commit è aumenta a scalabilità. L'opzione di muntagna "mb_optimize_scan", chì permette di aumentà u rendiment in cundizioni di frammentazione di u sistema di fugliale grande, hè adattatu per travaglià cù schedari cù estensioni.
- U supportu per i flussi di scrittura in u sottosistema chì supporta i dispositi di bloccu hè statu cessatu. Questa funzione hè stata pruposta per i SSD, ma ùn era micca spargugliatu è ùn ci sò attualmente micca dispositi in usu chì supportanu stu modu è hè improbabile chì appariscenu in u futuru.
- U sistema di schedari Btrfs hà aghjustatu supportu per l'invio di dati cumpressi quandu eseguisce operazioni di mandatu è riceve. In precedenza, quandu si usava invià / riceve, u latu di l'inviu hà decompressatu i dati almacenati in forma cumpressa, è u latu di ricivutu l'hà ricumandatu prima di scrive. In u kernel 5.18, l'applicazioni di u spaziu di l'utilizatori chì utilizanu mandate / riceve chjamate anu datu l'abilità di trasmette dati cumpressi senza repackaging. A funziunalità hè implementata grazia à e novi operazioni ioctl BTRFS_IOC_ENCODED_READ è BTRFS_IOC_ENCODED_WRITE, chì permettenu di leghje direttamente è di scrive l'infurmazioni in quantità.
- Memoria è servizii di sistema
- L'integrazione di un inseme di patches hà iniziatu, chì permette di riduce significativamente u tempu di ricustruisce u kernel ristrutturandu a ghjerarchia di i fugliali di l'intestazione è riducendu u nùmeru di dipendenze incruciate. Kernel 5.18 include patches chì ottimisanu a struttura di i fugliali di l'intestazione di u pianificatore di attività (kernel/sched). Paragunatu à a versione precedente, u cunsumu di u tempu di CPU in l'assemblea di u kernel / sched / code hè stata ridutta di 61%, è u tempu attuale hè diminuitu di 3.9% (da 2.95 à 2.84 sec).
- U codice Kernel hè permessu di utilizà u standard C11, publicatu in 2011. Nanzu, u codice aghjuntu à u kernel avia da cunfurmà cù a specificazione ANSI C (C89), furmatu in u 1989. In i script di creazione di kernel 5.18, l'opzione '—std=gnu89' hè rimpiazzata cù '—std=gnu11 -Wno-shift-negative-value'. A pussibilità di usà u standard C17 hè stata cunsiderata, ma in questu casu, hè necessariu di aumentà a versione minima supportata di GCC, mentri l'inclusione di u supportu C11 si adatta à i requisiti attuali per a versione GCC (5.1).
- Prestazione di pianificazione di compiti mejorata nantu à i processori AMD cù a microarchitettura Zen, chì furnisce parechje Last Level Cache (LLC) per ogni node cù canali di memoria lucali. A nova versione elimina u sbilanciamentu LLC trà i nodi NUMA, chì hà purtatu à un aumentu significativu di u rendiment per certi tipi di carichi di travagliu.
- L'arnesi per a traccia di l'applicazioni in u spaziu di l'utilizatori sò stati allargati. A nova versione di u kernel aghjusta l'abilità per i prucessi di l'utilizatori per creà l'avvenimenti di l'Usuariu è scrive dati à u buffer di traccia, chì pò esse vistu cù l'utilità di traccia di u kernel standard cum'è ftrace è perf. L'avvenimenti di traccia di u spaziu di l'utilizatori sò isolati da l'avvenimenti di traccia di u kernel. U statutu di l'avvenimentu pò esse vistu à traversu u schedariu /sys/kernel/debug/tracing/user_events_status, è a registrazione di l'eventi è a registrazione di dati attraversu u schedariu /sys/kernel/debug/tracing/user_events_data.
- Aggiuntu un mecanismu per u monitoraghju (sonda) e chjama di funzione - fprobe. L'API fprobe hè basatu annantu à ftrace, ma hè limitatu solu da a capacità di attaccà i gestori di callback à i punti di entrata di funzioni è punti di uscita di funzioni. A cuntrariu di kprobes è kretprobes, u novu mecanismu permette di utilizà un gestore per parechje funzioni à una volta.
- U supportu per i prucessori ARM più vechji (ARMv4 è ARMv5) chì ùn sò micca equipati di una unità di gestione di memoria (MMU) hè stata interrotta. U supportu per i sistemi ARMv7-M senza MMU hè mantenutu.
- U supportu per l'architettura NDS32 di tipu RISC aduprata in i processori Andes Technologies hè statu interrottu. U codice hè statu eliminatu per via di a mancanza di mantenimentu è di a mancanza di dumanda di supportu NDS32 in u kernel principale. Linux (L'utilizatori rimanenti utilizanu build di kernel specializati da i pruduttori di hardware).
- Per automaticamente, custruisce u kernel cù supportu per u formatu di file executable a.out hè disattivatu per l'architettura alfa è m68k, chì cuntinueghjanu à aduprà stu formatu. Hè prubabile chì u supportu per u formatu legatu a.out serà sguassatu cumplettamente da u kernel prestu. I piani di sguassà u formatu a.out sò stati discututi da u 2019.
- L'architettura PA-RISC furnisce un supportu minimu per u mecanismu vDSO (oggetti dinamichi virtuali spartuti), chì furnisce un inseme limitatu di chjamate di sistema dispunibili in u spaziu di l'utilizatori senza cambià di cuntestu. U supportu vDSO hà permessu di implementà a capacità di eseguisce cù una pila non eseguibile.
- Aghjunghje supportu per u mecanismu Intel HFI (Hardware Feedback Interface), chì permette à l'hardware di trasmette infurmazioni à u kernel nantu à u rendiment attuale è l'efficienza energetica di ogni CPU.
- Aggiuntu un driver per u mecanismu Intel SDSi (Software-Defined Silicon), chì permette di cuntrullà l'inclusione di funzioni supplementari in u processatore (per esempiu, struzzioni specializate è memoria cache supplementu). L'idea hè chì i patatine fritte ponu esse furnite à un prezzu più bassu cù funzioni avanzati chjusi, chì ponu esse "acquistu" è capacità supplementari attivate senza rimpianu hardware di u chip.
- U driver amd_hsmp hè statu aghjuntu per sustene l'interfaccia AMD HSMP (Host System Management Port), chì furnisce l'accessu à e funzioni di gestione di u processatore per mezu di un inseme di registri speciali chì sò apparsu in i processori di u servitore AMD EPYC chì cumincianu cù a generazione Fam19h. Per esempiu, attraversu HSMP, pudete ottene dati nantu à u cunsumu di energia è a temperatura, stabilisce limiti di freccia, attivà diversi modi di rinfurzà u rendiment, è gestisce i paràmetri di memoria.
- L'interfaccia I/O asincrona io_uring implementa l'opzione IORING_SETUP_SUBMIT_ALL per registrà un inseme di descrittori di file in un buffer di ring, è l'operazione IORING_OP_MSG_RING per mandà un signalu da un buffer di ring à un altru buffer di ring.
- U mecanismu DAMOS (Data Access Monitoring-based Operation Schemes), chì permette a memoria per esse liberata in cunsiderà a freccia di l'accessu à a memoria, hà sviluppatu capacità per monitorà l'operazioni di memoria da u spaziu di l'utilizatori.
- Una terza serie di patches hè stata integrata cù l'implementazione di u cuncettu di folios di pagina, chì s'assumiglia à e pagine cumposti, ma anu una semantica mejorata è una urganizazione più clara di u travagliu. Utilizà i tomi permette di accelerà a gestione di memoria in certi sottosistemi di kernel. In i patches pruposti, e funzioni di gestione di a memoria interna sò state tradutte in folios, cumprese variazioni di a funzione get_user_pages (). Furnitu supportu per a creazione di grandi volumi in codice di lettura anticipata.
- U sistema di assemblea supporta avà e variabili d'ambiente USERCFLAGS è USERLDFLAGS, cù quale pudete passà bandieri supplementari à u compilatore è u linker.
- In u subsistema eBPF, u mecanismu BTF (BPF Type Format), chì furnisce l'infurmazioni di verificazione di u tipu in u pseudocode BPF, furnisce l'abilità di aghjunghje annotazioni à variàbili chì riferenu à l'area di memoria in u spaziu di l'utilizatori. L'annotazioni aiutanu u sistema di verificazione di codice BPF à identificà è verificate megliu l'accessi di memoria.
- Un novu gestore di allocazione di memoria per almacenà i prugrammi BPF caricati hè statu prupostu, chì permette un usu più efficaci di a memoria in situazioni induve un gran numaru di prugrammi BPF sò caricati.
- A bandiera MADV_DONTNEED_LOCKED hè stata aghjunta à a chjama di u sistema madvise (), chì furnisce strumenti per ottimisà a gestione di a memoria di u prucessu, chì cumplementa a bandiera MADV_DONTNEED esistente, attraversu quale u kernel pò esse infurmatu in anticipu nantu à a liberazione imminente di un bloccu di memoria, i.e. chì stu bloccu ùn hè più necessariu è pò esse usatu da u kernel. A cuntrariu di MADV_DONTNEED, l'usu di a bandiera MADV_DONTNEED_LOCKED hè permissibile per e pagine di memoria pinned in RAM, chì, quandu madvise hè chjamatu, sò scacciati senza cambià u so status pinned è, in casu d'un accessu sussegwente à u bloccu è generazione di una "pagina. colpa ", sò rinviati cù u vincolante cunservatu. Inoltre, un cambiamentu hè statu aghjustatu per permettà a bandiera MADV_DONTNEED per esse usata cù grandi pagine di memoria in HugeTLB.
- Virtualizazione è Sicurezza
- Per l'architettura x86, u supportu hè statu aghjuntu à u mecanismu di prutezzione di flussu di cummandu Intel IBT (Indirect Branch Tracking), chì impedisce l'usu di tecniche di custruzzione di sfruttamentu chì utilizanu tecniche di prugrammazione orientata à u ritornu (ROP, Programmazione Orientata à Ritornu), in quale u sfruttamentu. hè furmatu in a forma di una catena di chjama digià esistenti in memoria di pezzi di istruzzioni di a macchina chì finiscinu cù una struzzione di ritornu di cuntrollu (per regula, questi sò i fini di e funzioni). L'essenza di u metudu di prutezzione implementatu hè di bluccà transizioni indiretti à u corpu di una funzione aghjunghjendu una struzzione ENDBR speciale à l'iniziu di a funzione è chì permettenu l'esekzione di una transizione indiretta solu in u casu di una transizione à questa struzzione (una struzzione indiretta). chjamate à traversu JMP è CALL deve sempre cascà nantu à l'istruzzioni ENDBR, chì hè piazzata à e funzioni iniziali).
- Abilitatu un cuntrollu più strettu di i limiti di u buffer in e funzioni memcpy (), memmove () è memset (), realizatu in tempu di compilazione quandu u modu CONFIG_FORTIFY_SOURCE hè attivatu. U cambiamentu aghjuntu si riduce à verificà se elementi di strutture chì a so dimensione hè cunnisciuta vanu oltre i cunfini. Hè nutatu chì a funzione implementata permetterebbe bluccà tutti i buffer di buffer di kernel in relazione à memcpy () identificati in almenu l'ultimi trè anni.
- Aghjunta a seconda parte di u codice aghjurnatu per u generatore di numeri pseudo-aleatori RDRAND, chì hè rispunsevule di u funziunamentu di i dispusitivi /dev/random è /dev/urandom. A nova implementazione hè nutèvule per unificà u funziunamentu di /dev/random è /dev/urandom, è aghjunghjendu prutezzione contr'à i duplicati in u flussu di numeri aleatorii à l'avviu. macchine virtuali è a transizione à l'usu di a funzione hash BLAKE2s invece di SHA1 per l'operazioni di mischju d'entropia. Stu cambiamentu hà migliuratu a sicurezza di u generatore di numeri pseudocasuali eliminendu l'algoritmu SHA1 problematicu è eliminendu a necessità di sovrascrive u vettore d'inizializazione RNG. Siccomu l'algoritmu BLAKE2s supera SHA1 in prestazioni, u so usu hà ancu avutu un impattu pusitivu nantu à e prestazioni.
- Per l'architettura ARM64, u supportu hè statu aghjuntu per un novu algoritmu di autentificazione di puntatore - "QARMA3", chì hè più veloce di l'algoritmu QARMA, mantenendu u livellu propiu di sicurità. A tecnulugia permette d'utilizà struzzioni ARM64 specializate per verificà l'indirizzi di ritornu utilizendu signature digitale chì sò almacenati in i bits superiori inutilizati di u punteru stessu.
- Per l'architettura ARM64, u supportu hè statu implementatu per l'assemblea cù l'inclusione in GCC 12 di un modu di prutezzione contra a soprascrittura di l'indirizzu di ritornu da una funzione in casu di un buffer overflow in a pila. L'essenza di a prutezzione hè di salvà l'indirizzu di ritornu in una pila separata "ombra" dopu chì u cuntrollu hè trasferitu à una funzione è ricuperà questu indirizzu prima di esce da a funzione.
- Aggiuntu un novu keyring - "machine", chì cuntene e chjave di u pruprietariu di u sistema (MOK, Machine Owner Keys), supportatu in u bootloader shim. Queste chjavi ponu esse aduprate per firmà digitale cumpunenti di u kernel caricate in una fase post-boot (per esempiu, i moduli di u kernel).
- Eliminatu u supportu per e chjave private asimmetriche per i TPM, chì sò stati offerti in una versione legacy di TPM, avianu cunnisciuti prublemi di sicurezza, è ùn sò micca stati largamente aduttati in pratica.
- Aghjunghje a prutezzione di dati cù u tipu size_t da overflows integer. U codice include handlers size_mul (), size_add () è size_sub (), chì permettenu di multiplicà in modu sicuru, aghjunghje è sottrae dimensioni cù u tipu size_t.
- Quandu si custruisce u kernel, i bandieri "-Warray-bounds" è "-Wzero-length-bounds" sò attivati, chì mostranu avvisi quandu l'indici supera u cunfini di l'array è quandu si usanu array di lunghezza zero.
- U dispusitivu virtio-crypto hà aghjustatu supportu per a criptografia cù l'algoritmu RSA.
- Sottusistema di rete
- In l'implementazione di ponti di rete, u supportu per u modu di ubligatoriu portu (modu chjusu) hè statu aghjuntu, in quale l'utilizatore pò mandà u trafficu à traversu u portu solu da un indirizzu MAC autorizatu. A capacità di utilizà parechje strutture per evaluà u statu di u protokollu STP (Spanning Tree Protocol) hè ancu aghjuntu. Nanzu, i VLAN puderanu esse mappati solu direttamente à STP (1: 1), cù ogni VLAN gestitu indipindente. A nova versione aghjusta u paràmetru mst_enable, quandu hè attivatu, u statu di VLAN hè cuntrullatu da u modulu MST (Multiple Spanning Trees) è u ligame di VLAN pò currisponde à u mudellu M: N.
- U travagliu cuntinuava à integrà l'arnesi in a pila di a rete per seguità i motivi di abbandunà i pacchetti (codici di ragiuni). U codice di u mutivu hè mandatu quandu a memoria assuciata à u pacchettu hè liberata è permette di situazione cum'è u pacchettu di pacchettu per errore di l'intestazione, rp_filter spoofing detection, checksum invalidu, fora di memoria, regule IPSec XFRM attivate, numeru di sequenza invalida TCP, etc.
- Hè pussibule di trasferisce i pacchetti di rete da i prugrammi BPF lanciati da u spaziu di l'utilizatori in u modu BPF_PROG_RUN, in quale i prugrammi BPF sò eseguiti in u kernel, ma torna u risultatu à u spaziu di l'utilizatori. I pacchetti sò trasmessi cù u sottusistema XDP (eXpress Data Path). U modu di trasfurmazioni di pacchetti in diretta hè supportatu, in quale u processatore XDP pò redirige i pacchetti di rete in u volu à a pila di rete o à altri dispositi. Hè ancu pussibule di creà generatori di software di trafficu esternu o rimpiazzà frames di rete in a pila di rete.
- Per i prugrammi BPF attaccati à i gruppi di rete, e funzioni d'aiutu sò state pruposte per stabilisce esplicitamente u valore di ritornu di e chjama di u sistema, chì permette di trasmette infurmazione più cumpleta nantu à i mutivi di u bloccu di a chjama di u sistema.
- U subsistema XDP (eXpress Data Path) hà aghjustatu supportu per i pacchetti frammentati posti in parechje buffers, chì vi permette di processà frames Jumbo in XDP è aduprà TSO / GRO (TCP Segmentation Offload / Generic Receive Offload) per XDP_REDIRECT.
- U prucessu di sguassà i namespaces di a rete hè stata accelerata significativamente, chì era in dumanda nantu à certi grandi sistemi cù un grande volume di trafficu.
- Equipment
- U driver amdgpu per difettu include a tecnulugia di sincronizazione adattativa FreeSync, chì vi permette di aghjustà a freccia di rinfrescante di l'infurmazioni nantu à u screnu, assicurendu l'imaghjini lisci è senza lacrime mentre ghjucate è vede video. U supportu GPU Aldebaran hè statu annunziatu cum'è stabile.
- U driver i915 aghjunghjenu supportu per i chips Intel Alderlake N è e carte grafiche discrete Intel DG2-G12 (Arc Alchemist).
- U driver nouveau furnisce supportu per bitrate più elevati per interfacce DP / eDP è supportu per estensori di cable lttprs (Link-Training Tunable PHY Repeaters).
- In u sottosistema drm (Direct Rendering Manager) in i driver armada, exynos, gma500, hyperv, imx, ingenic, mcde, mediatek, msm, omap, rcar-du, rockchip, sprd, sti, tegra, tilcdc, xen è vc4 supportu di parametri hè statu aghjuntu nomodeset, chì permette di disattivà u cambiamentu di i modi video à u livellu di u kernel è l'usu di l'attrezzi di accelerazione di rendering hardware, lascendu solu funziunalità in relazione à u framebuffer di u sistema.
- Supportu aghjuntu per ARM SoС Qualcomm Snapdragon 625/632 (adupratu in LG Nexus 5X è smartphones Fairphone FP3), Samsung Exynos 850, Samsung Exynos 7885 (adupratu in Samsung Galaxy A8), Airoha (Mediatek/EcoNet) EN7523, Mediatek mt6582 tableta 5008G), Microchip Lan3, Renesas RZ/G966LC, RZ/V2L, Tesla FSD, TI K2/AM3 è i.MXRTxxxx.
- Aggiuntu supportu per i dispositi ARM è schede da Broadcom (Raspberry Pi Zero 2 W), Qualcomm (Google Herobrine R1 Chromebook, SHIFT6mq, Samsung Galaxy Book2), Rockchip (Pine64 PineNote, Bananapi-R2-Pro, STM32 Emtrion emSBS, Samsung Galaxy Tab S). , Tablet Prestigio PMT5008 3G), Allwinner (A20-Marsboard), Amlogic (Amediatek X96-AIR, CYX A95XF3-AIR, Haochuangy H96-Max, Amlogic AQ222 è OSMC Vero 4K+), Aspeed (Quanta S6Q, ASMMVE8), Marvell3 ROMED / Armada (Ctera C200 V1 è V2 NAS), Mstar (DongShanPiOne, Miyoo Mini), NXP i.MX (Protonic PRT8MM, emCON-MX8M Mini, Toradex Verdin, Gateworks GW7903).
- Aghjunghje supportu per i sistemi di sonu è i codecs AMD PDM, Atmel PDMC, Awinic AW8738, i.MX TLV320AIC31xx, Intel CS35L41, ESSX8336, Mediatek MT8181, nVidia Tegra234, Qualcomm SC7280, Renesas RZ/V2L, Texas Instruments 585. Aggiunta l'implementazione iniziale di u driver di sonu per u chip Intel AVS DSP. Supportu di driver aghjurnatu per Intel ADL è Tegra234, è hà fattu cambiamenti per migliurà u supportu audio in i dispositi Dell, HP, Lenovo, ASUS, Samsung è Clevo.
À u listessu tempu, a Fundazione Latinoamericana di Software Liberu hà creatu una versione di u kernel 5.18 cumpletamente gratuita - Linux-libre 5.18-gnu, pulitu di elementi di firmware è driver chì cuntenenu cumpunenti micca liberi o sezioni di codice cù scopu limitatu da u fabricatore. A nova versione pulisce i driver per i pannelli MIPI DBI, Amphion VPU, MediaTek MT7986 WMAC, Mediatek MT7921U (USB), è chip audio Realtek 8852a/8852c WiFi, Intel AVS, è Texas Instruments TAS5805M. I fugliali DTS per diversi SoC Qualcomm cù processori basati nantu à AArch64 sò stati ancu puliti. U codice di pulizia di blob hè statu aggiornatu per i driver è i sottosistemi di AMD GPU, MediaTek MT7915, Silicon Labs WF200+ WiFi, Mellanox Spectru Ethernet, Realtek rtw8852c, Qualcomm Q6V5, Wolfson ADSP, è MediaTek HCI UART.
Source: opennet.ru
