Login
Newsletter
Werbung

Mo, 4. Februar 2008, 13:39

Software::Kernel

USB-Änderungen kehren in den Kernel zurück

Der vor zwei Jahren erstmals vorgestellte Patch, der sicherstellen sollte, dass nur GPL-Treiber auf die zentralen USB-APIs zugreifen können, findet erneut seinen Weg in den Kern.

Nach Auffassung manch eines Kernel-Entwicklers sind Kernel-Module abgeleitete Werke des Kernels, und für diese schreibt die GPL vor, dass sie unter der gleichen Lizenz wie der Kernel stehen müssen. Die Auslegung der Passage der GPL ist allerdings bei vielen umstritten, doch auch Torvalds vertritt die Meinung, dass alle Treiber, die gegen eine Kernel-API gelinkt sind oder gegen einen Kernel linken, auch unter der GPL stehen müssen. Im Gegensatz zu Userland-Applikationen stellen Treiber in diesem Fall eine vom Linuxkernel abgeleitete Software dar, die auch den Lizenzbestimmungen der GPL unterliegen muss.

Proprietäre Kernel-Module sind deshalb seit geraumer Zeit im Kernel ungern gesehen. Für Hersteller proprietärer Treiber bedeutet allerdings die Einbindung ihrer Produkte ein Risiko. Bisher habe zwar niemand versucht, dies zu erzwingen, doch würde auch nach Meinung von Greg Kroah-Hartman »ein einziger Entwickler«, der dies versucht, ausreichen, um die bisherige Praxis zu Fall zu bringen. Dies demonstrierte Kroah-Hartman bereits Anfang 2006 in einem kleinen Patch, der wichtige Funktionen des Kernels dem Zugriff von nicht-GPL-Modulen entzog und für Diskussionen mit Herstellern proprietärer Treiber sorgte.

Eine Änderung von Kroah-Hartman, die offiziell in Kernel 2.6.16 erscheinen sollte, hat diverse Funktionen dem Zugriff von nicht-GPL-Modulen entzogen, insbesondere solche im USB-Subsystem. Für die proprietären Module diverser Hersteller war es damit nicht mehr möglich, auf legale Weise die Funktionen usb_match_id, usb_register_driver und usb_deregister zu verwenden. Die Module könnten daher nicht mehr geladen werden.

Die Änderung wurde schlussendlich vor der Freigabe des Kernels 2.6.16 zurückgenommen. Gleichzeitig kündigten die Entwickler allerdings an, den Patch im Februar 2008 wieder einzubinden. Damit sollte den Herstellern proprietärer Treiber die Gelegenheit gegeben werden, ihre Treiber so anzupassen, dass sie einen Gebrauch von Userspace-Schnittstellen wie usbfs, libusb oder gadgetfs machen, ähnlich wie es bereits diverse Drucker- und Scanner-Treiber unter Linux praktizieren.

Der neue Patch sei nun eine Konsequenz auf die Ankündigung und resultiert aus der Tatsache, so Kroah-Hartman, dass es faktisch keine proprietären USB-Treiber mehr gibt, die direkt auf die Kernel-Funktionen zugreifen. Trotz allem stößt der neue Patch nicht auf breite Zustimmung. Viele Entwickler bemängeln, dass die im Userspace verfügbaren Funktionen für eine schnelle Kommunikation immer noch nicht geeignet seien, was Kroah-Hartman indirekt auch bestätigt. Auch der von Kroah-Hartman vorgebrachte Einwand, dass es keine proprietären Treiber mehr gibt weisen Entwickler zurück. Es gebe durchaus noch etliche Treiber, die einen direkten Zugriff benötigen und die durch den Patch nicht mehr funktionieren werden. Darüber hinaus äußern manche Anwender die Sorge, dass der Patch aller Voraussicht nach zahlreiche proprietäre Treiber für Drucker unbrauchbar machen wird.

Werbung
Kommentare (Insgesamt: 83 || Alle anzeigen )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung