Salta al contenuto principale


Torvalds furioso: “Distruggete questa spazzatura!” Il codice del kernel Linux sotto accusa


Tutti gli aggiornamenti dei driver grafici della serie DRM-Next sono stati inseriti con successo nel kernel Linux 6.15, ma lo stesso Linus Torvalds non era soddisfatto di uno dei componenti. Il codice in questione è un codice di test chiamato “hdrtest” incluso nella build principale del kernel e, secondo Torvalds, lascia “spazzatura” nell’albero sorgente. Con il suo tipico tono schietto, ha affermato che il codice “dovrebbe essere distrutto”, almeno dal punto di vista degli sviluppatori.

In una lettera alla mailing list pubblicata recentemente, Torvalds ha scritto che era irritato dall’introduzione della “odiosa spazzatura hdrtest” e che a) rallenta la build perché viene eseguita come parte di una build allmodconfig completa, anziché come un test separato su richiesta; b) lascia file casuali nelle directory include, ingombrando l’albero sorgente.

Ha fatto notare che in precedenza c’erano state lamentele in merito e che il codice non avrebbe dovuto essere inserito nel ramo principale in questa forma. “Perché questi test vengono eseguiti come parte di una build normale? — Torvalds era indignato. “Non aggiungiamo file di dipendenza casuali che corrompono l’albero sorgente.”

Ha anche aggiunto che era grazie a “git status” che si lamentava dei file spazzatura aveva notato il problema. Ma la cosa peggiore è che questi file interferiscono con il completamento del nome quando si lavora nella console. E aggiungerli a .gitignore, secondo lui, avrebbe solo mascherato il problema, non lo avrebbe risolto.

Ha finito per disabilitare temporaneamente hdrtest, contrassegnandolo come BROKEN. “Se vuoi eseguire questo hdrtest, fallo come parte dei tuoi test. Non far vedere agli altri quella cosa disgustosa sul tuo albero. È meglio renderlo un target di build separato come make drm-hdrtest piuttosto che parte della build standard”, ha concluso.

A prima vista, potrebbe sembrare che stiamo parlando di testare il supporto HDR (High Dynamic Range), soprattutto perché di recente Linux ha lavorato attivamente sulla gestione del colore e sulla gamma dinamica estesa. Tuttavia, a un esame più attento si è scoperto che “hdr” in questo caso significa header, ovvero file C-header. Il codice hdrtest è per il nuovo driver Intel Xe e viene utilizzato per verificare che gli header DRM siano scritti correttamente, siano autosufficienti e superino la verifica kernel-doc. Vale a dire, questo è un banale controllo di qualità dei file di servizio, semplicemente implementato in modo non riuscito.

Quindi l’intero ramo DRM-Next è già arrivato in Linux 6.15, ma ora gli sviluppatori devono ripulire le loro tracce, altrimenti Torvalds si assicurerà personalmente che hdrtest scompaia dal kernel principale.

L'articolo Torvalds furioso: “Distruggete questa spazzatura!” Il codice del kernel Linux sotto accusa proviene da il blog della sicurezza informatica.