Abo
  • IT-Karriere:

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. FREICON GmbH & Co. KG, Freiburg
  2. Bayerische Versorgungskammer, München

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. 469,00€
  2. 98,99€ (Bestpreis!)
  3. 245,90€ + Versand

Proctrap 28. Okt 2018

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


Folgen Sie uns
       


Bionic Finwave - Bericht (Hannover Messe 2019)

Festo zeigte auf der Hannover Messe einen schwimmenden Roboter aus dem 3D-Drucker.

Bionic Finwave - Bericht (Hannover Messe 2019) Video aufrufen
e.Go Life: Ein Auto, das lächelt
e.Go Life
Ein Auto, das lächelt

Das Auto ist zwar klein, bringt aber sogar gestandene Rennfahrer ins Schwärmen: Das Aachener Unternehmen e.Go Mobile hat seine ersten Elektroautos ausgeliefert. In einer Probefahrt erweist sich der Kleinwagen als sehr dynamisch.
Ein Bericht von Werner Pluta

  1. EZ-Pod Renault-Miniauto soll Stadtverkehr in Kolonne fahren
  2. Elektromobilität EnBW will weitere 2.000 Schnellladepunkte errichten
  3. Elektromobilität Verkehrsminister will Elektroautos länger und mehr fördern

Homeoffice: Wenn der Arbeitsplatz so anonym ist wie das Internet selbst
Homeoffice
Wenn der Arbeitsplatz so anonym ist wie das Internet selbst

Homeoffice verspricht Freiheit und Flexibilität für die Mitarbeiter und Effizienzsteigerung fürs Unternehmen - und die IT-Branche ist dafür bestens geeignet. Doch der reine Online-Kontakt bringt auch Probleme mit sich.
Ein Erfahrungsbericht von Marvin Engel

  1. Bundesagentur für Arbeit Informatikjobs bleiben 132 Tage unbesetzt
  2. IT-Berufe Bin ich Freiberufler oder Gewerbetreibender?
  3. Milla Bund sagt Pläne für KI-gesteuerte Weiterbildungsplattform ab

IT-Headhunter: ReactJS- und PHP-Experten verzweifelt gesucht
IT-Headhunter
ReactJS- und PHP-Experten verzweifelt gesucht

Marco Nadol vermittelt für Hays selbstständige Informatiker, Programmierer und Ingenieure in Unternehmen. Aus langjähriger Erfahrung als IT-Headhunter weiß er mittlerweile sehr gut, was ihre Chancen auf dem Markt erhöht und was sie verschlechtert.
Von Maja Hoock

  1. Jobporträt Wenn die Software für den Anwalt kurzen Prozess macht
  2. Struktrurwandel IT soll jetzt die Kohle nach Cottbus bringen
  3. IT-Jobporträt Spieleprogrammierer "Ich habe mehr Code gelöscht als geschrieben"

    •  /