Linux

Un bug capace di lasciare una macchina Linux davanti a uno schermo nero può scaturire da una singola operazione di arrotondamento. È quanto ha scoperto Linus Torvalds analizzando un problema nel driver grafico Intel Xe: la correzione decisiva consiste sostanzialmente nel sostituire l’uso della funzione round_up() con un round_down(), ma per arrivarci il “re pinguino” ha dovuto modificare il codice di debug 24 volte e riavviare il sistema 18 volte con versioni del kernel contenenti controlli diagnostici diversi.

La parte insolita della storia riguarda il metodo seguito: Torvalds racconta di aver affidato a un sistema di intelligenza artificiale buona parte del lavoro ripetitivo necessario per aggiungere strumenti di debug, interpretarne l’output e restringere progressivamente il campo della ricerca.

Il caso è particolarmente interessante perché riguarda drm/xe, il driver Linux che Intel ha sviluppato come base aggiornata e, quindi, “allo stato dell’arte”, per le GPU più recenti. Xe è entrato nel kernel upstream a partire dalla serie 6.8, inizialmente con numerose piattaforme utilizzabili soprattutto a fini sperimentali; sulle generazioni Xe2 e successive ha poi assunto un ruolo centrale.