Open Source im professionellen Einsatz

Linux-Kernel: Volle Kraft zurück

31.05.2017

Mitunter weiß selbst Kernelvater Linus Torvalds nicht mehr so genau, was sein Sprössling alles so treibt. Das erfährt er jedoch spätestens dann, wenn jemand schreit, weil ein gerade entferntes Feature die eigene Software lahmlegt.

327

So geschehen mit "FOLL_FORCE", einem nach Aussage von Torvalds "hässlichem Interface", dass er am 9. Mai aus dem Kernel zu entfernen versuchte. Unter der Überschrift "try to remove use of FOLL_FORCE entirely" deaktivierte er "FOLL_FORCE" im Kernel und schrieb dazu seinen Mitentwicklern "lasst uns mal sehen, ob jemand daran hängt". Zugleich äußerte er sich aber optimistisch, dass es gut sein könne, dass niemand diese "Punch-Through-Semantik" für "/proc/<PID>/mem" brauche.

Gut drei Wochen später zeigte sich, dass er falsch lag. Entwickler Keno Fischer schrieb unter der Überschrift "Yes, people use FOLL_FORCE ;)", dass der LLVM-basierte Just-in-time-Compiler für die Programmiersprache Julia durchaus Gebrauch von dem Feature mache, es als Hardening-Mechanismus nutze. Es erschwere Angreifern den Zugriff, weil die dank "FOLL_FORCE" in der Lage sein müssen, Syscalls auszuführen. Zugleich verdopple der Ansatz im Gegensatz zu anderen nicht die Anforderungen an den virtuellen Adressspeicher. Er fügte hinzu, dass seines Wissens auch das Wine-Projekt auf "FOLL_FORCE" vertraue.

Robert O'Callahan, der an Mozillas Record and Replay Framework arbeitet, dem Debugger Rr, meldete sich ebenfalls zu Wort. Man schreibe in vielen Situationen über "/proc/.../mem" auf Read-only-Code und Data Mappings. Workarounds wären zwar möglich, würden aber dank verschiedener Kontext-Switches eine Menge Overhead erzeugen.

Die beiden Aussagen konnten Torvalds Entwicklerherz offenbar erweichen. Er versprach, die Änderungen rückgängig zu machen und das Verhalten von Kernel 4.11 zu restaurieren. Ohnehin sei der Commit von einem optimistischen "Vielleicht-merkt-es-niemand"-Ansatz getrieben gewesen. Er fügte dem reversiven Patch noch die Aussagen der Entwickler hinzu, um ihre Anwendungsfälle zu beschreiben. Zudem bat er darum, den Einsatz von "FOLL_FORCE" künftig möglichst zu begrenzen. Insbesondere "FOLL_FORCE" in Kombination mit "FOLL_WRITE" sei eine hässliche Sache.

Ähnliche Artikel

comments powered by Disqus

Ausgabe 11/2017

Digitale Ausgabe: Preis € 6,40
(inkl. 19% MwSt.)

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.