Dopo due mesi di sviluppo, è stata presentata la nuova versione del Linux Kernel 5.4, versione in cui vengono evidenziate varie modifiche Questi includono: driver exFAT sperimentale, modalità "lockdown" per limitare l'accesso root al kernel, meccanismo fs-verity per monitorare l'integrità dei file, la possibilità di utilizzare CIFS per la partizione root e altro ancora.
La nuova versione ha adottato la patch 15743s, la dimensione della patch è 63 MB (le modifiche hanno interessato 12800 file, 828167 righe di codice aggiunte, 126149 righe rimosse). Circa il 46% di tutte le modifiche presentate in 5.4 sono relative ai driver di dispositivo, circa il 15% delle modifiche sono legate all'aggiornamento del codice specifico delle architetture hardware, il 12% sono legate allo stack di rete, il 4% ai file system e il 3% con sottosistemi interni del kernel.
Principali novità in Linux 5.4
Nella sezione sperimentale «messa in scena» ("Drivers / staging /"), dove vengono posizionati i componenti che richiedono un affinamento, viene aggiunto un driver exFAT aperto sviluppato da Samsung. In precedenza, non era possibile aggiungere il supporto exFAT al kernel a causa dei brevetti, ma la situazione è cambiata dopo che Microsoft ha rilasciato le specifiche pubblicamente disponibili e ha consentito l'utilizzo gratuito dei brevetti exFAT su Linux.
Il driver aggiunto al kernel si basa su un codice Samsung obsoleto (versione 1.2.9), che richiede affinamento e adattamento ai requisiti per progettare il codice per il kernel.
Aggiunto un meccanismo per rilevare le modifichequindi sostituzioni fs-verity, simile a dm-verity, ma funziona a livello di filesystem, non sul dispositivo a blocchi. Fs-verity aggiunge la possibilità di utilizzare selettivamente i controlli di integrità e di autenticare i singoli file utilizzati in modalità di sola lettura.
Un nuovo driver "Device-Mapper dm-clone" raggiunge il kernel Linux 5.4, questo consente di creare una copia locale basata sul dispositivo a blocchi di sola lettura che può essere scritto durante il processo di clonazione.
Il file system EROFS che era precedentemente sul ramo "staging" è stato spostato nell'albero principale.
EROFS supporta l'archiviazione di dati compressi, ma adotta un approccio diverso all'archiviazione di blocchi compressi, ottimizzato per prestazioni elevate con accesso casuale ai dati.
Per la parte di virtualizzazione, il kernel ha adottato il modulo »lockdown», che incorporava le patch fornite nelle distribuzioni, utilizzate per limitare l'accesso dell'utente root al kernel e bloccare il bypass UEFI Secure Boot.
Senza utilizzare il blocco, un utente malintenzionato che riesce a eseguire codice con privilegi di root può anche eseguire il suo codice a livello di kernel, ad esempio sostituendo il kernel con kexec o leggendo / scrivendo memoria tramite / dev / kmem.
Un'altra novità è che è stato aggiunto un nuovo filesystem virtiofs, che consente l'esportazione efficiente di parti del file system dal sistema host ai sistemi guest. Il sistema guest può montare la directory contrassegnata per l'esportazione sul lato host, il che semplifica notevolmente l'organizzazione dell'accesso condiviso alle directory sui sistemi di virtualizzazione.
D'altra parte, lo si evidenzia Amdgpu aggiunge il supporto per le GPU Navi 12/14così come le APU Arcturus e Renoir, inclusi gli strumenti di gestione dell'alimentazione per Navi12, Renoir e Arcturus.
Il controller amdkfd (per GPU discrete come Fiji, Tonga, Polaris) aggiunto il supporto per le schede basate sulle GPU Navi14, Navi12 e Arcturus.
Nel driver DRM per schede grafiche Intel, è stato aggiunto il supporto per la GPU utilizzata nei chip non ancora rilasciati sulla base della nuova microarchitettura Tiger Lake.
Il sottosistema DRM (Direct Rendering Manager) e il driver DRM i915 per il sottosistema video Intel hanno aggiunto il supporto per la tecnologia di protezione dalla copia dei contenuti video e audio HDCP2.2.
Il driver Nouveau ha migliorato la gestione del colore del display e ha aggiunto la possibilità di utilizzare proprietà aggiuntive (DEGAMMA / CTM / GAMMA) per la GPU NVIDIA nv50.
Mentre per l'hardware:
- Aggiunto supporto per ARM SoC ASpeed AST2600.
- Il supporto per SoC Kendin / Micrel / Microchip obsoleti e non più utilizzati, Winbond / Nuvoton W8695x90 e Intel IOP900x / IOP33xx è stato rimosso.
- Supporto aggiuntivo per piattaforme e piastre ARM Snapdragon 855 (SM8150), Mediatek MT7629, Allwinner V3, NXP i.MX8M Nano, Layerscape LS1046A, Amlogic SM1 (S905X3), Amlogic G12B (S922X, A311D), Rockchips Mecer Xtreme Mini S6, AO Mini, AsOpen Chromebase Mini Chromebase Mini AST2600, Leez RK3399 P710.
- Aggiunto supporto per laptop basato su SoC Snapdragon 835 / MSM8998 (Asus NovaGo TP370QL, HP Envy X2 e Lenovo Miix 630), Snapdragon 850 / sdm850 (Lenovo Yoga C630) e smartphone basati su Snapdragon 410 / MSM8916 (Samsung Galaxy A3, A5, Longcheer L8150 / Android One 2).