Oplossing voor zeldzame opstartproblemen in de Linux-kernel

Vlak voor de nieuwste stabiele release van de Linux-kernel hebben ontwikkelaars een oplossing doorgevoerd voor een zeldzame, maar uiterst lastige fout tijdens het opstarten. Sommige computers met meerdere processorkernen bleven bij het aanzetten plotseling hangen, een probleem dat al ruim twee jaar ongemerkt in de code meereisde.

De bug trof zogeheten SMP-systemen, wat simpelweg staat voor processors met meerdere rekenkernen die taken tegelijkertijd verwerken. Het achterhalen van de oorzaak bleek een flinke uitdaging, vooral omdat de problemen zich steeds op verschillende manieren uitten en daardoor lastig te reproduceren waren. Uiteindelijk bleek de boosdoener een wijziging uit 2024 te zijn rondom specifieke achtergrondprocessen, waardoor rekenkernen elkaar onder bijzondere omstandigheden blokkeerden tijdens het initialiseren.

In de praktijk merkten de meeste computergebruikers waarschijnlijk niets van deze bug, omdat de situatie waarin het misging heel specifiek was. Wie er wel door werd getroffen, zat echter met een machine die halverwege het opstartproces muurvast kwam te zitten. De aanpassing zorgt ervoor dat deze processen elkaar niet langer in de weg zitten, zodat systemen ook in die randgevallen weer probleemloos doorstarten.

De reparatie is op de valreep toegevoegd aan de aankomende stabiele kernelversie en wordt naar verwachting ook doorgevoerd naar oudere versies met langdurige ondersteuning. Daarmee verdwijnt een hardnekkig spookprobleem waar ontwikkelaars geruime tijd naar hebben moeten zoeken.

Bron: https://www.phoronix.com/news/Linux-7.3-KThreads-NBCON