Linux-Kernel: Mit Machine Learning auf der Suche nach Bug-Fixes

Wichtige Patches, die in stabilen Kernel-Versionen landen sollten, werden von der Linux-Community oft vergessen oder übersehen. Abhilfe schaffen soll offenbar Machine Learning, wie die Entwickler Sasha Levin und Julia Lawall erklären.

Artikel veröffentlicht am ,
Die Linux-Community scheint mit der Fülle an Patches überfordert zu sein.
Die Linux-Community scheint mit der Fülle an Patches überfordert zu sein. (Bild: David Stenlay, flickr.com/CC-BY 2.0)

Die Entwicklung des Linux-Kernels folgt bestimmten Regeln, die für Außenstehende oft nur schwer nachvollziehbar sind. Dazu gehöre etwa, dass Patches für die aktuelle stabile Version von Linux nur in diesen Zweig gelangten, wenn sie auch als stabil markiert seien, sagte der bei Microsoft angestellte Entwickler Sasha Levin auf dem Open Source Summit in Edinburgh. Daraus ergebe sich jedoch das organisatorische Problem, dass oft Patches vergessen oder übersehen würden, die eigentlich in dem stabilen Zweig landen sollten. Helfen soll hier ein Machine-Learning-Ansatz, um die richtigen Patches zu finden.

Stellenmarkt
  1. Anwendungsberaterin / Anwendungsberater (w/m/d) SAP-Lösungsplanung und Projektkoordination
    Berliner Stadtreinigungsbetriebe (BSR), Berlin
  2. Consultant IT-Security (m/w/d)
    operational services GmbH & Co. KG, Nürnberg
Detailsuche

Erschwert wird die Suche dadurch, dass nur bestimmte Patches in dem stabilen Zweig landen sollen und eben nicht alle. Dazu gehören Fehlerbehebungen ebenso wie Patches, die Sicherheitslücken schließen oder auch solche, welche die Unterstützung für Hardware nachrüsten, aber eben keine, die neue Funktionalität bringen. Die Übergänge seien jedoch oft fließend und fast alle für die verschiedenen Subsysteme zuständigen Teams hätten unterschiedliche Regeln dafür, was als Patch für den stabilen Zweig gelte, und was nicht, sagte Levin.

Die bisherige Situation und Vorgehensweise ist laut Levin nicht viel mehr als ein "schlechtes Rosinenpicken", bei dem zu viele Patches übersehen würden. Das betreffe etwa auch immer wieder Patches, die Sicherheitslücken schließen, bei denen zum Zeitpunkt der Patchveröffentlichung jedoch nicht klar war, dass der Patch eine potentielle Sicherheitslücke schließt. Levin schätzt gar, dass rund 50 Prozent der Patches, die notwendigerweise in dem stabilen Zweig landen sollten, dort nicht eingepflegt würden. Menschen seien in der Beurteilung dafür einfach nicht gut genug.

Patches durchsuchen und die Richtigen finden

Gemeinsam mit der Sicherheitsforscherin Julia Lawall, die für das französische Forschungsinstitut Inria arbeitet, hat Levin den Versuch unternommen, den Prozess der Suche nach Patches für den stabilen Zweig mit Hilfe von Machine Learning zu automatisieren. Je nach Ansatz der beiden werden die verfügbaren Patches hierbei nach verschiedenen Merkmalen durchsucht, die dafür sprechen, dass der Patch im stabilen Zweig landen sollte.

Golem Akademie
  1. Azure und AWS Cloudnutzung absichern: virtueller Zwei-Tage-Workshop
    25.–26. November 2021, virtuell
  2. SAMBA Datei- und Domänendienste einrichten: virtueller Drei-Tage-Workshop
    15.–17. November 2021, Virtuell
Weitere IT-Trainings

Dazu gehören Kommentare in der sogenannten Commit-Message ebenso wie bestimmte Eigenschaften des Patches selbst. Offensichtliche Schlagworte sind etwa Bugfix, Panic oder Memory-Leak. Patches, die lediglich eine Überprüfung für Array-Grenzen hinzufügen oder die Überprüfung einer Variable auf Null, sind laut Lawall ebenso sehr wahrscheinlich Kandidaten für den stabilen Zweig. Als Trainingsgrundlage der Modelle dienten darüber hinaus mehrere Zehntausend Patches, die tatsächlich im stabilen Zweig des Kernel gelandet sind.

Lawall und Levin haben so mit unterschiedlichen Ansätzen und Optimierungen Modelle geschaffen, die neue Patches darauf überprüfen, ob diese auch in den stabilen Zweig landen sollten. Levin nutzt das System bereits als Indikator, um übersehene Patches für den stabilen Zweig vorzuschlagen. Besonders gut funktioniere das so erstellte System aber noch nicht. Immerhin sei der gesamte Prozess abseits des Modells noch nicht automatisiert.

Noch keine Automatisierung

Langfristig könnte es möglich sein, dass die von dem Modell gefundenen Patches auch wirklich automatisiert vorgeschlagen werden. Noch sind die Modelle dafür aber nicht gut genug. So experimentierte Levin etwa mit einem Bot für eine Mailingliste, der diese Aufgabe übernommen hat, jedoch viel zu viel Rauschen verursacht hat. So konnte der Bot etwa nicht zwischen einem normalen Bugfix und einem Bugfix für den stabilen Zweig unterscheiden. Sinnvollerweise sollte der Bot ja aber nur auf vergessene Patches für den stabilen Zweig hinweisen.

Auch Lawall habe bereits über eine aktive Verwendung der Forschungsarbeit nachgedacht, jedoch noch keine konkreten Pläne dazu. Zuerst soll das Modell weiter verbessert werden, eventuell auch auf Grundlage einer anderen Art neuronalem Netzwerk als bisher. Dass der Ansatz grundsätzlich funktioniert, davon scheinen aber sowohl Lawall als auch Levin überzeugt.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Kursabsturz
Teamviewer-Chef spricht über schwere hausgemachte Fehler

Die vielen neuen Mitarbeiter seien nicht richtig eingearbeitet worden. Und die Ziele von Teamviewer seien zu hochgesteckt gewesen, sagt Oliver Steil.

Kursabsturz: Teamviewer-Chef spricht über schwere hausgemachte Fehler
Artikel
  1. NDR und Media Broadcast: Fernsehen über 5G wird breit ausgestrahlt
    NDR und Media Broadcast
    Fernsehen über 5G wird breit ausgestrahlt

    Fernsehen kann auch über 5G laufen. Auf 578 MHz kann das jetzt ausprobiert werden. NDR und Media Broadcast machen es möglich.

  2. Amazon-Go-Konkurrenz: Rewe eröffnet ersten kassenlosen Supermarkt
    Amazon-Go-Konkurrenz
    Rewe eröffnet ersten kassenlosen Supermarkt

    Kameras und Sensoren überwachen Kunden in Rewes kassenlosem Supermarkt. Bezahlt wird mit dem Smartphone.

  3. Huawei: Telefónica setzt eine Antenne für alle Frequenzen ein
    Huawei
    Telefónica setzt eine Antenne für alle Frequenzen ein

    All-in-One braucht weniger Energie und Platz. Telefónica setzt die Blade AAU & Dual Band FDD 8T8R in München ein.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Speicherprodukte von Sandisk & WD zu Bestpreisen (u. a. Sandisk SSD Plus 2TB 140,99€) • Sapphire Pulse RX 6600 497,88€ • Epos H3 Hybrid Gaming-Headset 144€ • Apple MacBook Pro 2021 erhältlich ab 2.249€ • EA-Spiele für alle Plattformen günstiger • Samsung 55" QLED 699€ [Werbung]
    •  /