AVMs Linux-Engagement ausgebremst?
Das Berliner Unternehmen AVM droht mit der Einstellung der Entwicklung von Linux-Treibern für die eigene Produktpalette, sollte eine von den Linux-Entwicklern geplante Änderung Einzug in Kernel 2.6.16 halten. Diese sieht vor, dass diverse Schnittstellen proprietären Treibern wie denen von AVM nicht mehr länger zur Verfügung stehen.
Der Quelltext der AVM-Treiber ist nicht frei verfügbar. Das Unternehmen stellt stattdessen fertig kompilierte Dateien zum Download bereit, wie man es beispielsweise von Windows-Treibern gar nicht anders erwarten würde. Obwohl der Linux-Kernel freie Software ist, besteht die Möglichkeit des Einbindens solch fertiger Treibermodule.
Dies widerspricht jedoch nicht nur der Philosophie freier Software, sondern hat auch handfeste Nachteile: Nur der Hersteller hat Einblick in den Quelltext und die Möglichkeit diesen zu verändern. Erscheint eine neue Version des Linux-Kernels kommt es regelmäßig vor, dass das Treibermodul nicht mehr funktioniert und an die neue Version angepasst werden muss. Wenn man Glück hat und der Hersteller Produktpflege betreibt, wird man nach einigen Tagen oder Wochen angepasste Treiber auf der Website finden. Sollte der Hersteller den Support für das Produkt aufgrund des Alters eingestellt haben oder gar vom Markt verschwunden sein, steht der Anwender vor einem Problem: Entweder er verzichtet auf neue Kernel-Versionen oder auf die mit neuen Kerneln nicht mehr funktionierende Hardware.
Quelloffene Treiber haben diese Probleme nicht: Sobald der Treiber in den offiziellen Linux-Kernel aufgenommen wurde, passen die Linux-Entwickler diesen selbständig an neue Kernel-Versionen an, nehmen dem Hersteller also gar Arbeit ab. Dass trotzdem viele Hersteller den Quelltext ihrer Treiber nicht veröffentlichen liegt daran, dass sie der Konkurrenz das Abgucken nicht zu sehr erleichtern wollen – schließlich verrät ein Treiber stets eine Menge über das Innenleben der Hardware.
Treibermodule kommunizieren über definierte Schnittstellen mit dem Kernel. In den letzten Monaten nehmen die Linux-Entwickler zunehmend Änderungen vor, die nicht quelloffenen Treibermodulen wie denen von AVM die Verwendung einiger dieser Schnittstellen verbieten. Ziel ist dafür zu sorgen, dass mehr Hersteller dazu übergehen, den Quelltext ihrer Treiber zu veröffentlichen und für eine Aufnahme in den Linux-Kernel zu sorgen. Sollte der Plan nicht aufgehen könnte dies freilich auch dazu führen, dass einige Hersteller gar keine Treiber mehr anbieten.
Unter Windows treten solche Probleme seltener auf, da Microsoft die Schnittstellen über längere Zeiträume unberührt lässt und in der Regel nur beim Veröffentlichen einer neuen Windows-Version antastet.
Konkret geht es im aktuellen Fall um eine geplante Änderung, die die Verwendung diverser USB-Schnittstellen ab Linux 2.6.16 nur noch für quelloffene, unter der GPL stehende Treiber ermöglicht. Genau hieran nimmt AVM Anstoß und hinterfragt öffentlich die eigene Unterstützung für das freie Betriebssystem. Zu Wort gemeldet hat sich AVM-Entwickler Sven Schmidt in einer E-Mail an die Linux-Kernel-Mailingliste:
[...]
consequences
Because of the GPL_EXPORT declaration it is no longer possible to build and run non-GPL loadable drivers for USB devices. We´ve put a lot of energy into providing the open source community with Linux drivers for nearly all of our products within the last six years. Today, the customer has the option to choose Windows or Linux drivers for AVM USB products. AVM is the market leader in the ISDN controller market with more than 80% market share in Germany (close to 50% in Europe). Moreover AVM is one of a handful manufacturers who provide a Linux driver for their WLAN USB devices. Technically, there are a number of reasons, e.g. service quality and reliability, to establish kernel mode drivers for communication devices offering services like Fax G3, analog modem etc. by means of software.
conclusion
If it is no longer possible to have non-GPL USB drivers, we shall have to drop our Linux support for all AVM USB devices. We would even have to discontinue the 802.11g++ WLAN USB device driver Linux developement.
This mail is not intended to provoke a discussion of open vs closed source. The only intention of this mail is to make you aware of the consequences of such a decision.
Sven Schmidt
Erwartungsgemäß kamen direkt Nachfragen auf, warum AVM die Treiber nicht unter die GPL stelle, zu denen bisher keine Stellung bezogen wurde. Dass man diesem Konflikt nicht zu hohe Bedeutung beimessen sollte zeigt die Tatsache, dass Kernel-Entwickler Greg Kroah-Hartmann, der sich für diese Änderung verantwortlich zeigt, in einer Antwort Gesprächsbereitschaft mit AVM signalisiert und zugleich eine Alternative aufzeigt, die aller Voraussicht nach für AVM keinerlei Nachteile mit sich bringen und obendrein noch Unterstützung für FreeBSD mit geringem Aufwand ermöglichen würde.