A volte per risolvere un bug del Kernel Linux bisogna avviare il sistema 292.612 volte
Per quanti hanno esperienza di sviluppo non sarà difficile ricordare qualche bug molesto, uno di quelli che non si presenta tutte le volte, per il quale sono necessarie determinate condizioni affinché si presenti, una race condition, piuttosto che una congiunzione astrale.
Capita a tutti, ed è capitato anche a Richard WM Jones, uno sviluppatore che si è trovato costretto ad avviare Linux per 292.612 volte per verificare come il problema, identificato in una specifica patch, fosse risolto.
Il problema, nello specifico, era un blocco che avveniva ogni circa 1000 boot, all’apparizione di questo messaggio:
[ 0.070120] Freeing SMP alternatives memory: 48K
Chiariamo: il numero dei boot, quel 292.612, non è così importante. È un numero ritenuto “sufficiente” per dimostrare il non presentarsi della problematica. Come detto, in condizioni normali, quindi con bug presente, questa entro i 1.000 boot falliva sempre.
Fortunatamente i tempi in cui l’unica via per avviare un sistema erano quelli di schiacciare il bottone ed aspettare il completamento del caricamento del BIOS ed affini sono stati superati e, sempre fortunatamente, è possibile simulare mediante appositi strumenti (nella fattispecie un programma che richiama più istanze guestfish in parallelo per eseguire i boot) tutti i boot desiderati.
I numeri però rimangono davvero alti, e come spiega l’autore del post e risolutore del problema, sono stati l’unica via per isolare il problema.
In conclusione questa storia insegna due cose: la prima è che la tenacia (e gli automatismi) è un alleato prezioso per risolvere i problemi, la seconda è che per fortuna c’è ancora chi si pone come obiettivo il fatto di risolvere problemi che capitano solo una volta ogni tanto.
Perché la legge di Murphy è chiara, il problema si presenterà inevitabilmente, e sarà verosimilmente nel momento peggiore.
Molti complimenti, Mr. Jones.
Raoul Scarazzini
Da sempre appassionato del mondo open-source e di Linux nel 2009 ho fondato il portale Mia Mamma Usa Linux! per condividere articoli, notizie ed in generale tutto quello che riguarda il mondo del pinguino, con particolare attenzione alle tematiche di interoperabilità, HA e cloud.
E, sì, mia mamma usa Linux dal 2009.
Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!
Hai dubbi o problemi? Ti aiutiamo noi!
Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.