{"id":150190,"date":"2025-12-01T11:11:57","date_gmt":"2025-12-01T09:11:58","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/reliz-yadra-linux-6-18"},"modified":"2025-12-01T11:11:57","modified_gmt":"2025-12-01T09:11:58","slug":"reliz-yadra-linux-6-18","status":"publish","type":"post","link":"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-6-18","title":{"rendered":"Rilascio del kernel Linux 6.18","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dopo due mesi di sviluppo, Linus Torvalds ha presentato il rilascio del kernel Linux 6.18. Tra i cambiamenti pi\u00f9 significativi: dm-pcache per la cache su disco nella memoria non volatile (PMEM), rimozione di Bcachefs, modalit\u00e0 di verifica online per XFS, driver Binder (Android IPC) e Tyr (GPU Mali) in Rust, possibilit\u00e0 di creare driver USB in Rust, ottimizzazione della cache nell'allocatore di memoria SLUB, indirizzamento degli spazi dei nomi tramite descrittori di file, accelerazione dello swap, verifica delle BPF tramite firma digitale, virtualizzazione Intel CET in KVM, protocollo di rete PSP (ibrido TLS e IPsec), supporto per l'estensione IP AccECN, ottimizzazione dello stack UDP.       <\/p>\n<p>Nella nuova versione sono stati apportati 15035 correzioni da 2217 sviluppatori, la dimensione della patch \u00e8 di 45 MB (sono stati interessati 13142 file, aggiunte 601897 righe di codice, rimosse 355006 righe). Nell'uscita precedente ci sono state 14334 correzioni da 2118 sviluppatori, la dimensione della patch \u00e8 di 46 MB. Circa il 40% di tutte le modifiche presentate nella versione 6.18 riguarda i driver dei dispositivi, circa il 16% delle modifiche \u00e8 relativo all'aggiornamento del codice specifico per le architetture hardware, il 12% riguarda lo stack di rete, il 5% - ai file system e il 3% ai subsystem interni del kernel.      <\/p>\n<p>Le principali novit\u00e0 nel kernel 6.18 (1, 2, 3):  <\/p>\n<ul>\n<li class=\"l\"> <b>Sottosistema di disco, input\/output e file system<\/b>\n<ul>\n<li class=\"l\"> Nel Device Mapper \u00e8 stato aggiunto il gestore dm-pcache per utilizzare la memoria permanente (memoria CXL, indirizzabile tramite dispositivo DAX) come ulteriore cache ad alte prestazioni prima di dischi tradizionali o unit\u00e0 flash pi\u00f9 lenti. Dm-pcache garantisce la conservazione dei contenuti della cache in caso di crash grazie all'uso di memoria non volatile, duplicazione dei metadati e verifica dell'integrit\u00e0 dei dati e dei metadati tramite checksum CRC32. Attualmente viene supportata solo la cache in modalit\u00e0 write-back.\n<li class=\"l\"> Dal kernel \u00e8 stato rimosso il codice del file system Bcachefs, che ora sar\u00e0 distribuito come modulo esterno, compilato utilizzando strumenti DKMS (Dynamic Kernel Module Support). Il codice Bcachefs potrebbe essere reintegrato nel kernel dopo che Kent Overstreet dimostrer\u00e0 effettivamente la possibilit\u00e0 di interagire correttamente con altri sviluppatori del kernel e la capacit\u00e0 di seguire le regole consolidate di sviluppo.\n<li class=\"l\"> Nella chiamata di sistema pwritev2() \u00e8 stato aggiunto il flag RWF_NOSIGNAL, che disabilita l'invio del segnale SIGPIPE durante la scrittura in tubi o socket anonimi interrotti.\n<li class=\"l\"> In Procfs \u00e8 stata aggiunta l'opzione di montaggio \u00abpidns\u00bb per specificare gli spazi dei nomi degli identificatori di processo (PID namespace). Esempio: \u00abmount -t proc -o pidns=\/proc\/self\/ns\/pid proc \/tmp\/proc\u00bb.\n<li class=\"l\"> In XFS \u00e8 stata dichiarata stabile e abilitata per impostazione predefinita la possibilit\u00e0 di utilizzare l'utilit\u00e0 fsck per controllare e correggere i problemi riscontrati in modalit\u00e0 online, senza smontare il filesystem. Sono state aggiunte le chiamate di sistema file_getattr e file_setattr per modificare gli attributi dei file speciali (qualsiasi inode). In KConfig, per impostazione predefinita, sono state disabilitate le opzioni XFS_SUPPORT_V4 (versione 4 di XFS) e XFS_SUPPORT_ASCII_CI (modalit\u00e0 senza distinzione tra maiuscole e minuscole dei caratteri ASCII), dichiarate obsoleto. Sono state rimosse le opzioni di montaggio obsolete attr2, noattr2, ikeep e noikeep.\n<li class=\"l\"> Nel MD RAID \u00e8 stato implementato un nuovo tipo di bitmap \u2014 llbitmap (lockless bitmap), che funziona senza blocchi e offre prestazioni superiori.\n<li class=\"l\"> Dalla struttura generale \u00abinode\u00bb \u00e8 stata estratta l'informazione relativa alla crittografia e alla verifica (puntatori i_crypt_info e i_verity_info). Questa modifica consente di ridurre il consumo di memoria nei file system che non supportano la crittografia e la verifica.\n<li class=\"l\"> Nel sottosistema FUSE \u00e8 stato aggiunto il supporto per la chiamata di sistema copy_file_range() e la copia diretta di intervalli utilizzando una dimensione con tipo a 64 bit (in precedenza era supportata solo la dimensione a 32 bit). \u00c8 stato aggiunto il supporto per l'inizializzazione in modalit\u00e0 sincrona durante il montaggio (FUSE_DEV_IOC_SYNC_INIT).\n<li class=\"l\"> Nel filesystem ext4 \u00e8 stata implementata la possibilit\u00e0 di utilizzare identificatori utente (uid) e di gruppo (gid) a 32 bit per accedere ai blocchi riservati. Sono state aggiunte le operazioni ioctl per impostare e leggere i parametri del superblocco dei filesystem montati (tune2fs potr\u00e0 modificare i parametri nel superblocco senza diritti di scrittura sul dispositivo a blocchi). Sono state completamente rimosse le impostazioni obsolete specifiche per ext3.\n<li class=\"l\"> In f2fs \u00e8 stata aggiunta l'opzione di montaggio \u00ablookup_mode\u00bb per selezionare la modalit\u00e0 di ricerca: perf \u2014 ricerca tramite hash, compat \u2014 ricerca lineare, auto \u2014 selezione automatica. Il cambio di modalit\u00e0 ha senso per le configurazioni con directory che non considerano la distinzione tra maiuscole e minuscole. La modalit\u00e0 di ricerca attuale pu\u00f2 essere verificata tramite il file \u00ab\/sys\/fs\/f2fs\/\/effective_lookup_mode\u00bb. \u00c8 stata aggiunta la possibilit\u00e0 di riservare inode accessibili solo agli utenti privilegiati.\n<li class=\"l\"> In Overlayfs \u00e8 stata aggiunta una modalit\u00e0 di lavoro che non tiene conto del maiuscolo\/minuscolo, abilitata a livello di strati del file system (l'impostazione per singole directory non \u00e8 ancora supportata).\n<li class=\"l\"> In BTRFS \u00e8 stato migliorato il parallelismo delle operazioni sotto carico intenso di lettura e basso carico di scrittura, ridotto il tempo di commit delle transazioni e notevolmente accorciato il tempo di sincronizzazione (da minuti a decine di secondi). \u00c8 stata fornita la possibilit\u00e0 di utilizzare blocchi (bs) di dimensioni superiori a quelle di una pagina di memoria (ps).\n<li class=\"l\"> In ksmbd (che opera a livello di kernel come server SMB) \u00e8 stato aggiunto un parametro per limitare il numero massimo di connessioni da uno solo. <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/lir\/ipv4\/\"   title=\"Indirizzi IP\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"740\">Indirizzi IP<\/a>. smbdirect, smbclient e smbserver sono stati aggiornati per utilizzare le strutture tipiche del kernel.\n<li class=\"l\"> In SQUASHFS \u00e8 stata aggiunta la possibilit\u00e0 di utilizzare nel syscall lseek() le opzioni SEEK_DATA e SEEK_HOLE per cercare dati e spazi vuoti in file sparsi. In alcuni test si \u00e8 registrato un aumento della prestazione nel copiare file sparsi fino a 150 volte.\n<li class=\"l\"> In EXFAT \u00e8 stata aggiunta la supporto per ioctl FS_IOC_GETFSLABEL e FS_IOC_SETFSLABEL per leggere e scrivere le etichette delle partizioni. \u00c8 stata fornita la possibilit\u00e0 di modificare le opzioni di montaggio durante il rimontaggio. \u00c8 stato accelerato il caricamento delle bitmap.\n<li class=\"l\"> In NTFS3 \u00e8 stato aggiunto il supporto per ioctl FS_IOC_GETFSLABEL e FS_IOC_SETFSLABEL per leggere e impostare le etichette delle partizioni.                        <\/ul>\n<li class=\"l\"> <b>Memoria e servizi di sistema<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stata accettata l'implementazione del meccanismo di interprocess communication Binder, scritto in Rust. Binder \u00e8 utilizzato in Android per facilitare l'interazione tra processi e la chiamata remota di metodi (un processo Android pu\u00f2 chiamare un metodo o una funzione in un altro processo Android, utilizzando Binder per identificare, chiamare e passare argomenti tra i processi). Il codice di Binder \u00e8 stato riscritto in Rust nell'ambito dell'iniziativa di Google per rafforzare la sicurezza di Android.\n<li class=\"l\"> In SLUB, il gestore di memoria del kernel, \u00e8 stato implementato un livello di caching opzionale \u00absheaves\u00bb, che utilizza pi\u00f9 cache, ciascuna delle quali \u00e8 legata a un singolo core CPU, consentendo di localizzare le operazioni di allocazione o deallocazione di memoria su un singolo core. Questo tipo di cache ha migliorato le prestazioni di allocazione e deallocazione della memoria nel kernel, eliminando la necessit\u00e0 di primitive di sincronizzazione eccessive richieste coinvolgendo core CPU diversi. Nei test condotti, il guadagno prestazionale \u00e8 variato dal 6,3% al 31% a seconda del tipo di carico.\n<li class=\"l\"> \u00c8 stata aggiunta la possibilit\u00e0 di creare file descriptor associati a uno specifico spazio dei nomi (namespace). A differenza dell'accesso agli spazi dei nomi tramite identificatori (\\\/proc\\\/\/ns\\\/), il file descriptor \u00e8 vincolato a un'istanza specifica dello spazio dei nomi ed esclude la situazione in cui un identificatore viene riutilizzato e punta gi\u00e0 a un altro oggetto. Analogamente all'uso di pidfds, l'apertura dei file descriptor che fanno riferimento agli spazi dei nomi avviene tramite le funzioni open_by_handle_at() e name_to_handle_at().\n<li class=\"l\"> \u00c8 stato implementato il meccanismo \u00abSwap Table\u00bb che consente di migliorare le prestazioni di paging. Il miglioramento si ottiene grazie alla riduzione della concorrenza per l'accesso alla cache di paging, una ricerca pi\u00f9 efficiente nella cache e una diminuzione della frammentazione. Il backend basato su Swap Table \u00e8 stato utilizzato per la cache di paging invece del backend XArray, consentendo un aumento delle prestazioni medio del 5-20%. Nei test di usemem, la larghezza di banda \u00e8 aumentata del 17-28%, nel test di ricompilazione multithreading del kernel il tempo di compilazione si \u00e8 ridotto dell'1,12-3,19%, mentre il test redis-benchmark con BGSAVE ha mostrato un aumento del numero di richieste elaborate del 6-7%.\n<li class=\"l\"> Il sottosistema Zswap \u00e8 stato trasferito all'uso diretto del sistema di allocazione della memoria zsmalloc invece dello strato zpool, che non viene pi\u00f9 utilizzato e ora \u00e8 stato rimosso dal kernel.\n<li class=\"l\"> Per gestire il comportamento del caricatore di microcodice sui sistemi x86 \u00e8 stata implementata l'opzione della linea di comando \u00abmicrocode=lista dei flag\u00bb. Nella sua forma attuale, la nuova opzione ha sostituito \u00abmicrocode.force_minrev\u00bb e consente anche di impostare la versione minima di microcodice consentita per il caricamento.\n<li class=\"l\"> \u00c8 iniziato il lavoro di riorganizzazione della struttura eccessivamente complessa \u00abpage\u00bb, utilizzata per gestire le pagine della memoria RAM. \u00c8 stato aggiunto il tipo \u2018memdesc_flags_t\u2019 per i campi con flag universali, che potranno essere utilizzati dopo la prevista futura separazione dalla struttura \u00abpage\u00bb delle strutture per slab e folii (folio).\n<li class=\"l\"> Per l'architettura nios2, utilizzata nei processori Altera Nios II (soft-processor basato su FPGA), \u00e8 stata implementata la supporto per la chiamata di sistema clone3().\n<li class=\"l\"> Nella configurazione del kernel (KConfig) \u00e8 stato aggiunto l'attributo \u00abtransitional\u00bb, che pu\u00f2 essere utilizzato per contrassegnare le impostazioni non visualizzate nelle interfacce utente, come \u00abmake menuconfig\u00bb, e non incluse nei file di configurazione generati. L'obiettivo principale dell'attributo \u00e8 semplificare la rinominazione delle opzioni mantenendo la compatibilit\u00e0 retroattiva.\n<li class=\"l\"> La versione minima del compilatore Clang, con cui pu\u00f2 essere compilato il kernel, \u00e8 stata elevata a LLVM 15. In Debian 12 e Ubuntu 22.04 \u00e8 fornito LLVM 14.\n<li class=\"l\"> Continua il trasferimento delle modifiche dal ramo Rust-for-Linux, legate all'uso del linguaggio Rust come secondo linguaggio per lo sviluppo di driver e moduli del kernel (il supporto per Rust non \u00e8 attivo per impostazione predefinita e non richiede Rust tra le dipendenze di compilazione obbligatorie del kernel). Nella nuova versione sono state implementate operazioni atomiche con la memoria per il codice Rust, la struttura maple tree, la possibilit\u00e0 di creare file DebugFS e funzioni per la manipolazione delle bitmap. \u00c8 stato ampliato l'accesso all'API per lo sviluppo di driver. \u00c8 stato aggiunto un set completo di astrazioni per lo sviluppo di driver USB (esempio di driver USB). Nello strumento perf \u00e8 stata aggiunta la supporto per i simboli di debug generati dal compilatore rustc.                      <\/ul>\n<li class=\"l\"> <b>Virtualizzazione e sicurezza<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stata aggiunta la supporto per la verifica crittografica dei programmi BPF caricabili tramite firma digitale. In futuro questa possibilit\u00e0 sar\u00e0 ampliata con strumenti per definire le regole di caricamento dei programmi BPF firmati e per fornire agli utenti non privilegiati la possibilit\u00e0 di utilizzare programmi BPF verificati.\n<li class=\"l\"> Nel hypervisor KVM \u00e8 stato implementato il supporto per la virtualizzazione della tecnologia Intel CET (Control-flow Enforcement Technology), utilizzata per proteggere contro exploit che utilizzano metodi di programmazione orientata al ritorno (ROP - Return-Oriented Programming). La protezione consiste nel fatto che, dopo aver passato il controllo a una funzione, l'indirizzo di ritorno viene salvato dal processore non solo nello stack normale, ma anche in uno stack secondario separato, che non pu\u00f2 essere modificato direttamente.\n<li class=\"l\"> \u00c8 stata aggiunta la possibilit\u00e0 di utilizzare pi\u00f9 di 255 CPU nei sistemi guest che operano sotto l'iperovsir Bhyve su host con FreeBSD 15.\n<li class=\"l\"> \u00c8 stato aggiunto un layer dibs (Direct Internal Buffer Sharing) per la condivisione controllata dei buffer all'interno di un ambiente isolato, come un hypervisor o un'istanza del kernel Linux.\n<li class=\"l\"> Nel sottosistema di auditing \u00e8 stata aggiunta la supporto per il funzionamento con pi\u00f9 moduli LSM (Linux Security Module) attivati contemporaneamente.\n<li class=\"l\"> \u00c8 stato aggiunto il driver virtio spi-virtio per l'accesso a un dispositivo SPI (Serial Peripheral Interface) da <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/it\/vps\/\"   title=\"macchine virtuali\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2239\">macchine virtuali<\/a>.\n<li class=\"l\"> Nel hypervisor KVM \u00e8 stata aggiunta la supporto per la modalit\u00e0 SEV-SNP CipherText Hiding, che blocca la lettura del testo cifrato nella memoria dei sistemi guest protetti da CPU non autorizzate.\n<li class=\"l\"> \u00c8 stato aggiunto il driver qtee per ambienti TEE (Trusted Execution Environment) nei chip Qualcomm.                    <\/ul>\n<li class=\"l\"> <b>Sottosistema di rete<\/b>\n<ul>\n<li class=\"l\"> \u00c8 stata aggiunta la supporto per la cifratura delle connessioni TCP, utilizzando il protocollo PSP (PSP Security Protocol), sviluppato da Google per cifrare il traffico tra i data center. PSP offre cifratura, controllo crittografico dell'integrit\u00e0 e autenticazione dell'origine, realizzando una sorta di combinazione delle capacit\u00e0 dei protocolli TLS e IPsec. In PSP viene utilizzata la cifratura a livello di singole connessioni di rete, piuttosto che dell'intero canale di comunicazione. PSP impiega chiavi di cifratura separate per diverse connessioni TCP tunnelizzate per un rigido isolamento del traffico tra diverse applicazioni e gestori. Per ridurre il carico sulla CPU, \u00e8 supportata la delega delle operazioni di cifratura e decifratura alle schede di rete (offload). Il protocollo UDP viene utilizzato come trasporto per la trasmissione dei dati, sopra il quale viene instradato il contenuto del pacchetto TCP originale.     <\/p>\n<p><center><img decoding=\"async\" alt=\"Rilascio del kernel Linux 6.18\" src=\"\/wp-content\/uploads\/2025\/12\/180701a9b56890a55860d65207471472.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>    <\/p>\n<li class=\"l\"> \u00c8 stata aggiunta la supporto iniziale per l'estensione AccECN (Accurate Explicit Congestion Notification), una versione migliorata dell'estensione ECN che consente agli host, in caso di congestione, di contrassegnare i pacchetti IP anzich\u00e9 scartarli. Questo permette di identificare l'insorgere di una prima fase di blocco nei canali di comunicazione senza perdita di pacchetti. L'estensione originale ECN ha una limitazione che consente di segnalare solo un sovraccarico durante un ciclo di invio e ricezione TCP (RTT, Round-Trip Time, invio della richiesta e ricezione della risposta). AccECN rimuove tale limitazione e consente al ricevente di inviare al mittente pi\u00f9 di un'etichetta di sovraccarico nell'intestazione del pacchetto TCP. Gli algoritmi di gestione della congestione possono utilizzare le informazioni ricevute per rispondere in modo pi\u00f9 preciso ai sovraccarichi, evitando un'improvvisa riduzione dell'intensit\u00e0 di invio dei pacchetti in presenza di un sovraccarico lieve.\n<li class=\"l\"> Nello stack UDP \u00e8 stata ottimizzata la gestione dei pacchetti in arrivo in condizioni di attacchi DDoS, che comportano l'arrivo di un gran numero di pacchetti in uno o pi\u00f9 socket UDP. Le ottimizzazioni apportate, come la riduzione delle lock in competizione, l'ottimizzazione della collocazione delle strutture dati in memoria e l'impiego di lock che tengono conto dell'architettura NUMA (Non-Uniform Memory Access), hanno permesso di aumentare le prestazioni nella ricezione dei pacchetti UDP del 47% e oltre in condizioni estreme.\n<li class=\"l\"> \u00c8 stata implementata la possibilit\u00e0 di disabilitare la cache di input\/output sul server NFS, consentendo l'utilizzo del server NFS in sistemi con una quantit\u00e0 limitata di memoria (ad esempio, in ambienti cloud ridotti). Disattivare la cache pu\u00f2 essere utile anche sui server NFS sovraccarichi per evitare l'espulsione dalla cache dei dati legati ai dischi locali, liberando memoria per la cache NFS.\n<li class=\"l\"> La dimensione massima dei buffer dei pacchetti in arrivo e in partenza per i socket di rete (net.core.rmem_max e net.core.wmem_max) \u00e8 stata incrementata da 2 MB a 4 MB. La dimensione predefinita impostata non \u00e8 cambiata (net.core.rmem_default e net.core.wmem_default = 2 MB).\n<li class=\"l\"> \u00c8 stato aggiunto un driver per l'acceleratore delle operazioni di rete Qualcomm PPE (Packet Processing Engine), utilizzato nel SoC Qualcomm IPQ9574.        <\/ul>\n<li class=\"l\"> <b>Apparecchiatura<\/b>\n<ul>\n<li class=\"l\"> Il kernel include il driver Tyr, scritto in Rust, che gestisce i GPU ARM Mali, che utilizzano la tecnologia CSF (Command Stream Frontend), come Mali G310, G510 e G710. Il driver non \u00e8 ancora pronto per l'uso costante da parte degli utenti normali ed \u00e8 considerato un prototipo sperimentale per testare le astrazioni per lo sviluppo di driver in Rust.\n<li class=\"l\"> Nei driver per dispositivi di input con interfaccia HID (Human Interface Device) \u00e8 stato aggiunto il supporto per touchpad con feedback tattile e sensori di pressione.\n<li class=\"l\"> \u00c8 proseguito il lavoro sul driver drm (Direct Rendering Manager) Xe per GPU basati sull'architettura Intel Xe, utilizzata nelle schede grafiche Intel della famiglia Arc e nella grafica integrata, a partire dai processori Tiger Lake. Nella nuova versione \u00e8 stata aggiunta l'interfaccia madvise, \u00e8 stato incluso il supporto per SR-IOV PF (Single Root I\/O Virtualization Physical Function), \u00e8 stato aggiunto il supporto per la modalit\u00e0 Intel PSMI per la validazione dell'hardware, \u00e8 stata garantita l'elaborazione delle informazioni sugli errori trasmesse dai firmware, \u00e8 stato implementato il profilo di consumo energetico SLPC e \u00e8 stato aggiunto il supporto per il caricamento di firmware ausiliari (ad esempio, per il controller della ventola e il regolatore di tensione) durante il controllo del driver.\n<li class=\"l\"> Nel driver AMDGPU \u00e8 stato aggiunto il supporto per dispositivi con APU Cyan Skillfish, migliorato il supporto per AMD GCN 1.0, implementata la compatibilit\u00e0 con l'utensile criu, e sono state aggiunte metriche di temperatura in sysfs, oltre a autorizzare le richieste di rimappatura MMIO dallo spazio utente.\n<li class=\"l\"> Nel driver i915 \u00e8 stato incluso il supporto per chip della famiglia Wildcat Lake e migliorata la compatibilit\u00e0 con GPU Jasper Lake, Elkhart Lake, Gen7 e Gen6.\n<li class=\"l\"> Nel driver Nouveau sono state attivate per default le GSP-firmware NVIDIA e migliorata l'elaborazione degli errori.\n<li class=\"l\"> \u00c8 proseguita l'integrazione dei componenti del driver Nova per GPU NVIDIA, dotate di firmware GSP, utilizzate a partire dalla serie NVIDIA GeForce RTX 2000 basata sull'architettura Turing. Il driver \u00e8 scritto in Rust. Nella nuova versione \u00e8 stata ampliata la supporto per i firmware GSP, migliorata l'implementazione del macro \"register!\", aggiunta la supporto per le classi di dispositivi PCI e gli identificatori dei produttori.\n<li class=\"l\"> \u00c8 stato aggiunto il driver rocket per acceleratori NPU, utilizzati nei SoC Rockchip RK3588.\n<li class=\"l\"> \u00c8 stato aggiunto il parametro del kernel \"boot_display\" per selezionare il dispositivo di output per visualizzare il processo di avvio su sistemi con pi\u00f9 GPU.\n<li class=\"l\"> Nel driver vesadrm \u00e8 stata implementata la supporto per palette a 8 bit.\n<li class=\"l\"> Nel driver msm \u00e8 stato aggiunto il supporto per la GPU Adreno 663 ed \u00e8 stata implementata la tecnologia di riduzione del consumo energetico IFPC (Inter Frame Power Collapse).\n<li class=\"l\"> Nel driver panthor \u00e8 stato aggiunto il supporto per GPU Mali-G710, Mali-G510, Mali-G310, Mali-Gx15, Mali-Gx20 e Mali-Gx25.\n<li class=\"l\"> \u00c8 stato aggiunto il supporto per i sistemi audio ASoC Qualcomm Glymur e PM4125, Realtek RT1321, Shanghai FourSemi FS2104\/5S, Texas Instruments PCM1754 e TAS2783A, qcs615, CS35L56 B2, tas2118, tas2x20, tas5825. \u00c8 stato aggiunto il supporto per le schede audio USB Tascam US-144mkII e Presonus S1824c.\n<li class=\"l\"> \u00c8 stato aggiunto il supporto per l'ARM CPU Cortex-A320\/A520AE\/A720AE e C1-Nano\/Pro\/Premium\/Ultra.\n<li class=\"l\"> \u00c8 stato aggiunto il supporto per piattaforme ARM, SoC e dispositivi: Apple M2 Pro, M2 Max e M2 Ultra, Sony Xperia SP, Samsung Galaxy S22, Samsung Galaxy S20 FE, ASUS Eee Pad Slider SL101, Lenovo ThinkBook 16, HP Omnibook X14 X1P42100, Dell Inspiron 7441 \/ Latitude 7455, Sige1, NanoPi Zero2, Axis Artpec8, NXP i.MX91, ROCK 2A\/2F, Qualcomm Lemans Auto, Renesas RZ\/T2H, RZ\/N2H, RZ\/T2H e RZ\/N2H, Aspeed AST27xx, Meta Clemente BMC, Netcube Nagami som, Tqma91xx, Ultratronik i.MX8MP Ultra-MACH, i.MX8ULP EVK9, Buffalo WXR-1750DHP.       <\/ul>\n<\/ul>\n<p>Contemporaneamente, la fondazione latinoamericana del software libero ha formato una versione completamente libera del kernel 6.18 \u2014 Linux-libre 6.18-gnu, ripulita da elementi di firmware e driver contenenti componenti o porzioni di codice non liberi, il cui ambito di applicazione \u00e8 limitato dal produttore. Nella versione 6.18 \u00e8 stata aggiornata la pulizia dei blob nei driver Nova-Core, Intel XE, TI PRUeth, Lantiq GSWIP, Marvell WiFi-Ex. \u00c8 stata effettuata la pulizia dei nomi dei blob nei file dts (devicetree) per i chip ARM Qualcomm, Mediatek e TI ARM64. \u00c8 stata neutralizzata il caricamento dei blob nei nuovi driver FourSemi fs2104\/5s, TI TAS2783 e Qualcomm GENI.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=64346\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.18. \u0421\u0440\u0435\u0434\u0438 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0437\u0430\u043c\u0435\u0442\u043d\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: dm-pcache \u0434\u043b\u044f \u0434\u0438\u0441\u043a\u043e\u0432\u043e\u0433\u043e \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u044d\u043d\u0435\u0440\u0433\u043e\u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 (PMEM), \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 Bcachefs, online-\u0440\u0435\u0436\u0438\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 XFS, \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b Binder (Android IPC) \u0438 Tyr (GPU Mali) \u043d\u0430 Rust, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f USB-\u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 \u043d\u0430 Rust, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0432 \u0430\u043b\u043b\u043e\u043a\u0430\u0442\u043e\u0440\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 SLUB, \u0430\u0434\u0440\u0435\u0441\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432 \u0438\u043c\u0451\u043d \u043f\u043e \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u043c \u0434\u0435\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0440\u0430\u043c, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":150191,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-150190","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.18.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-6-18\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"it_IT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.18 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.18.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-6-18\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-12-01T09:11:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2025-12-01T09:11:58+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Rilascio del kernel Linux 6.18 | ProHoster","description":"Dopo due mesi di sviluppo, Linus Torvalds ha presentato il rilascio del kernel Linux 6.18.","canonical_url":"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-6-18","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"it_IT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0420\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.18 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u041b\u0438\u043d\u0443\u0441 \u0422\u043e\u0440\u0432\u0430\u043b\u044c\u0434\u0441 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u0438\u043b \u0440\u0435\u043b\u0438\u0437 \u044f\u0434\u0440\u0430 Linux 6.18.","og:url":"https:\/\/prohoster.info\/it\/blog\/news\/reliz-yadra-linux-6-18","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2025-12-01T09:11:58+00:00","article:modified_time":"2025-12-01T09:11:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"150190","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-09 17:57:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 16:19:20","updated":"2026-02-09 17:57:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/150190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/comments?post=150190"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/150190\/revisions"}],"predecessor-version":[{"id":159483,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/posts\/150190\/revisions\/159483"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media\/150191"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/media?parent=150190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/categories?post=150190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/it\/wp-json\/wp\/v2\/tags?post=150190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}