Ein Bugreport in Debians Fehlerdatenbank sollte Besitzer von ARM-Geräten derzeit von einem Upgrade des Kernels abhalten, da dieser eine Reihe von ARM-Geräten am Booten hindert.
Debian-Kernel-Bug
Der Bugreport sieht Kernel 4.9.144-3 als Verursacher des Problems. Dieser war im Rahmen von GNU/Linux Debian 9.8 »Stretch« mit ausgeliefert worden. Wie der Ersteller des Bugreports und weitere betroffene Besitzer von verschiedenen ARM-Geräten schildern, hängen die Geräte beim Hochfahren bei der Meldung Starting kernel.
Schuldiger gefunden
Das es wirklich an dieser Kernel-Version lag, fand der Bugreporter heraus, indem er den aktualisierten Kernel einem Downgrade auf 4.9.130-2 unterzog. Mit diesem vorhergehenden Kernel bootete das Gerät anstandslos.
Viele Boards betroffen
Das erste als betroffen gemeldete Gerät war ein Lamobo-R1-Board. Doch schon bald gesellten sich andere Boards hinzu, die die Liste auf Lemaker Bananapi, Cubox-i4pro, Cubox-i4x4, Wandboard Quad, Odroid-XU4, Odroid-U3, Marvell Armada XP, Olimex OLinuXino-LIME2, Cubietruck, Firefly-RK3288 und den Router Linksys WRT1200AC ausdehnten.
Ein weiterer Betroffener stellte nach Überprüfung fest, dass der inkriminierte Kernel unter vielen anderen Änderungen auch zwei Maßnahmen gegen Spectre beinhaltete. Er baute den Kernel neu und deaktivierte die Maßnahmen, der Kernel startete trotzdem nicht.
Upstream oder Debian?
Die Frage, ob der Fehler im Upstream-Kernel oder in Debians Konfiguration steckt, deutet auf Debian, da Hardware mit Allwinner-SoC auf entsprechenden Boards beim Kernel-CI-Projekt keinerlei Probleme aufweist.
Der gleiche Anwender moniert, dass es bei Debian viel zu kompliziert sei, einen älteren Kernel zu booten. Bei Ubuntu und vielen anderen Distributionen reicht dazu die Auswahl eines älteren Kernel im GRUB-Bootmanager.
Patch im Test
Mittlerweile existiert ein Patch, der den Fehler anscheinend behebt, aber noch in der Testphase steckt. Anwender der betroffenen Boards sollten mit einem Update auf Debian 9.8 noch etwas warten, bis der Bugreport offiziell geschlossen ist und auf einen reparierten Kernel verweist.
Lehrstunde
Zwei Lehren kann Debian aus diesem Kernel-Bug ziehen: Es sollte einfacher sein, einen älteren Kernel zu booten. Zudem müssen Kernel, zumindest für die ARM-Plattform, besser getestet werden, bevor sie freigegeben werden.