OpenBSD und Linux: Kritik an Stillhalteabkommen für Treiberentwicklung

OpenBSD-Entwickler kritisieren den von einigen Linux-Entwicklern akzeptierten Ansatz, Hardware-Treiber unter Zuhilfenahme von unter Non-Disclosure Agreement stehender Dokumentation zu programmieren.

In Pocket speichern vorlesen Druckansicht 315 Kommentare lesen
Lesezeit: 4 Min.
Von
  • Thorsten Leemhuis

OpenBSD-Entwickler kritisieren auf einer ihrer Mailinglisten die Programmierung von Linux-Kernel-Treibern mit Hilfe von nur unter Stillhalteabkommen (NDA, Non-Disclosure Agreement) erhaltener Hardware-Dokumentation. Auslöser ist das Ende Januar von Greg Kroah-Hartman publik gemachte Angebot, dass Linux-Entwickler kostenlos Kernel-Treiber für verschiedenste Hardware schreiben wollen, und dazu auch NDAs akzeptieren.

Unter NDAs stehende Hardware-Spezifikationen sind nicht ungewöhnlich und wurden in der Vergangenheit schon von so manchem Linux- oder Embedded-Entwickler unterzeichnet – etwa auch, um Treiber für Hardware schreiben zu können, die noch nicht öffentlich vorgestellt wurde und auch noch nicht publik werden sollte. Da die Dokumentation jedoch nur den Entwicklern zur Verfügung steht, die das NDA unterzeichneten, können verschiedene Probleme entstehen: Andere Programmierer ohne Zugriff auf die Spezifikationen können etwa nur schwerlich Fehler im Treiber korrigieren oder diesen erweitern; zudem haben Entwickler anderer Betriebssysteme weiterhin keinen Zugriff auf die Dokumentation und können so nur schwerlich eigene Treiber schreiben.

Der Diskussionsteilnehmer kritisiert daher das öffentliche Angebot des Programms zur kostenlosen Linux-Treiber-Entwicklung, in dessen Rahmen auch der Austausch von unter NDA stehender Dokumentation möglich ist und diesen vereinfachen soll. Die Hardware-Hersteller könnten dann vorgeben, offen zu sein, während die Spezifikationen weiterhin weitgehend verschlossen blieben, lautet die Kritik. Das OpenBSD-Projekt habe mehrfach klar gemacht, dass solch ein Vorgehen Freier Software langfristig schade. Linux bekäme so einen Treiber, aber die Details zum Zugriff auf die Hardware seien für Außenstehende trotz Einsicht in die Quellen nicht unterscheidbar von Magie.

Greg Kroah-Hartman verwies in der Diskussion auf eine einige Tage zuvor veröffentlichte FAQ zu dem Treiber-Entwicklungsangebot. Der letzte Punkt geht dabei auf die Entwickler der BSD-Varianten ein: "Was ist mit ihnen? Sie können machen was sie wollen, ich habe überhaupt keinen Vorgaben für ihren Entwicklungsprozess."

Theo de Raadt, in der Vergangenheit schon mit spitzen Worten in Richtung Linux aufgetretener OpenBSD-Chef, bezeichnet den Eintrag in der FAQ als "fucking farce". Kroah-Hartman mache mit dem Angebot einen großen Fehler. De Raadt betonte, er kämpfe gegen solche Praktiken schon seit fast einem Jahrzehnt; er schreit förmlich heraus, dass Entwickler ohne Zugriff auf die Dokumentation keine Fehler beseitigen könnten und diese Treiber daher problematischer seien, als mit frei zugänglicher Dokumentation geschriebene. Er schließt seine Mail mit wenig freundlichen Worten: "It is people like you who are closed."

Der von den OpenBSD-Entwickler propagierte Ansatz für frei zugängliche Dokumentation böte, sofern sich die Hardware-Hersteller darauf denn verstärkt einlassen würden, die meisten Vorteile für alle Beteiligten. Der Ansatz der Linux-Entwickler ist ein Schritt auf die Hardware-Entwickler zu, die aus den verschiedensten Gründen häufig keine Spezifikationen veröffentlichen können oder wollen. Wie gut oder schlecht die Nutzung von unter NDA erhaltenen Spezifikationen für die Entwicklung freier Software insgesamt ist, hängt maßgeblich vom Wortlaut des jeweiligen NDA ab. Ein nur über einen kurzen Zeitraum laufendes NDA – etwa bis zur Veröffentlichung der Hardware – dürfte vielfach ein Vorteil für den Anwender ohne große Nachteile für Freie Software sein, da die Entwickler so früher Treiber schreiben können und auch andere Entwickler den Treiber später verbessern können. Anders sieht es jedoch aus, wenn der Zeitraum für die Gültigkeit des NDA lang ist und gleichzeitig nur ein einzelner Entwickler Zugriff auf die Spezifikationen bekommt. (thl)