Linux-DRI: Chromium-Sandbox kann Grafiktreiber-Abstürze verursachen
Als " unglaublich anfällig " beschreibt der Intel-Angestellte Keith Packard die GPU-Sandbox des Browsers Chromium. Denn " es sieht danach aus, dass diese sehr genaue Details einer OpenGL-Implementierung für jeden einzelnen Treiber kennen muss, auf dem sie läuft ". Darüber hinaus enthalte die Technik wohl eine Liste verschiedener Dateien und Modi, die der Treiber an die Funktion open übergebe. Deshalb könnten bereits kleine Veränderungen im Verhalten eines Treibers zu Abstürzen führen, die dann auch den Browser selbst betreffen.
Diesen Schluss zieht der langjährige X11-Entwickler nach der Analyse eines Fehlers(öffnet im neuen Fenster) , auf den er aufmerksam gemacht wurde und den er in seinem Blog(öffnet im neuen Fenster) näher beschreibt. Demnach stürzt der Browser bei der Verwendung der Direct Rendering Infrastructure(öffnet im neuen Fenster) (DRI) in Version 3 mit dem Intel-Treiber ab. Wird allerdings DRI2 verwendet, geschieht das nicht.
Um den Fehler zu finden, musste Packard zunächst den GPU-Prozess debuggen. Dieser wird als eigenständiger Prozess ausgelagert und läuft mehr oder weniger unabhängig vom eigentlichen Browser. Er hat nur sehr wenige Berechtigungen auf dem Betriebssystem, was wohl die Sicherheit des Browsers erhöhen soll. Allerdings erschwert dies auch das Auffinden von Fehlern, wie Packard berichtet.
Nachdem der Entwickler den Code in Mesa um einige Fehlermeldungen erweiterte, sei klar zu erkennen gewesen, warum die Anwendung beim ersten Zugriff auf einen durch DRI3 allozierten Puffer mit einer Schutzverletzung(öffnet im neuen Fenster) abstürzt. Denn der Speicher für Puffer eines sogenannten Fence-Objekts wird durch das Erzeugen einer temporären Datei mit Hilfe der Funktion open zugewiesen. Diese Funktion wird jedoch durch die Chromium-Sandbox anders ausgewertet als dies unter einem beliebigen System mit der Glibc zu erwarten wäre.
Wird der Browser mit deaktivierter Sandbox gestartet, tritt der Fehler wie zu erwarten nicht auf. Ein derartiges Verhalten des Browsers eigne sich entsprechend nicht für die grafischen Oberflächen unter Linux, so Packard.
- Anzeige Hier geht es zu Intel-Prozessoren bei Alternate Wenn Sie auf diesen Link klicken und darüber einkaufen, erhält Golem eine kleine Provision. Dies ändert nichts am Preis der Artikel.