Abo
  • Services:

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. Medion AG, Essen
  2. Villeroy & Boch AG, Mettlach

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.

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.



Anzeige
Hardware-Angebote
  1. 119,90€

Proctrap 28. Okt 2018

ne, die steuern ja eben keinen Code bei https://www.youtube.com/watch?v=iYWzMvlj2RQ


Folgen Sie uns
       


Touch-Projektoren von Bosch angesehen (CES 2019)

Die Projektoren von Bosch erlauben es, das projizierte Bild als Touch-Oberfläche zu verwenden. Das ergibt einige interessante Anwendungsmöglichkeiten.

Touch-Projektoren von Bosch angesehen (CES 2019) Video aufrufen
Magnetfeld: Wenn der Nordpol wandern geht
Magnetfeld
Wenn der Nordpol wandern geht

Das Erdmagnetfeld macht nicht das, was Geoforscher erwartet hatten - Nachjustierungen am irdischen Magnetmodell sind erforderlich.
Ein Bericht von Dirk Eidemüller

  1. Emotionen erkennen Ein Lächeln macht noch keinen Frohsinn
  2. Ökostrom Wie Norddeutschland die Energiewende vormacht
  3. Computational Periscopy Forscher sehen mit einfacher Digitalkamera um die Ecke

Mac Mini mit eGPU im Test: Externe Grafik macht den Mini zum Pro
Mac Mini mit eGPU im Test
Externe Grafik macht den Mini zum Pro

Der Mac Mini mit Hexacore-CPU eignet sich zwar gut für Xcode. Wer eine GPU-Beschleunigung braucht, muss aber zum iMac (Pro) greifen - oder eine externe Grafikkarte anschließen. Per eGPU ausgerüstet wird der Mac Mini viel schneller und auch preislich kann sich das lohnen.
Ein Test von Marc Sauter

  1. Apple Mac Mini (Late 2018) im Test Tolles teures Teil - aber für wen?
  2. Apple Mac Mini wird grau und schnell
  3. Neue Produkte Apple will Mac Mini und Macbook Air neu auflegen

Enterprise Resource Planning: Drei Gründe für das Scheitern von SAP-Projekten
Enterprise Resource Planning
Drei Gründe für das Scheitern von SAP-Projekten

Projekte mit der Software von SAP? Da verdrehen viele IT-Experten die Augen. Prominente Beispiele von Lidl und Haribo aus dem vergangenen Jahr scheinen diese These zu bestätigen: Gerade SAP-Projekte laufen selten in time, in budget und in quality. Dafür gibt es Gründe - und Gegenmaßnahmen.
Von Markus Kammermeier


      •  /