Während der Diskussion
Für das ZFS-on-Linux-Projekt empfahl Linus aufgrund der Inkompatibilität der CDDL- und GPLv2-Lizenzen die Verwendung des zfs-Moduls nicht. Die Situation ist, dass aufgrund der Lizenzpolitik von Oracle die Chancen, dass ZFS jemals in den Hauptkernel gelangen kann, sehr gering sind. Die zur Umgehung von Lizenzinkompatibilitäten vorgeschlagenen Schichten, die den Zugriff auf Kernelfunktionen in externen Code übersetzen, seien eine zweifelhafte Lösung, so die Anwälte weiter
Die einzige Möglichkeit, bei der Linus der Aufnahme des ZFS-Codes in den Hauptkernel zustimmen würde, besteht darin, eine offizielle Genehmigung von Oracle einzuholen, die vom Hauptanwalt oder besser noch von Larry Ellison selbst bestätigt werden muss. Zwischenlösungen wie Schichten zwischen dem Kernel und dem ZFS-Code sind aufgrund der aggressiven Richtlinien von Oracle in Bezug auf das geistige Eigentum von Programmierschnittstellen (z. B.
Wir möchten Sie daran erinnern, dass der ZFS-Code unter einer kostenlosen CDDL-Lizenz verteilt wird, die nicht mit GPLv2 kompatibel ist, wodurch ZFS unter Linux nicht in den Hauptzweig des Linux-Kernels integriert werden kann, da Code unter den GPLv2- und CDDL-Lizenzen gemischt wird ist inakzeptabel. Um diese Lizenzinkompatibilität zu umgehen, hat das ZFS-on-Linux-Projekt beschlossen, das gesamte Produkt unter einer CDDL-Lizenz in Form eines separat geladenen Moduls zu vertreiben, das separat vom Kernel bereitgestellt wird.
Die Möglichkeit, ein fertiges ZFS-Modul als Teil von Distributionskits zu verteilen, ist unter Juristen umstritten. Anwälte der Software Freedom Conservancy (SFC)
Die andere Seite kontert, dass das Problem der Kernelkompatibilität bei proprietären Treibern durch die Bereitstellung einer kleinen, unter der GPL-Lizenz verteilten Schicht gelöst wird (ein Modul unter der GPL-Lizenz wird in den Kernel geladen, der bereits proprietäre Komponenten lädt). Für ZFS kann ein solcher Layer nur vorbereitet werden, wenn Lizenzausnahmen von Oracle bereitgestellt werden. In Oracle Linux wird die Inkompatibilität mit der GPL behoben, indem Oracle eine Lizenzausnahme bereitstellt, die die Anforderung zur Lizenzierung kombinierter Arbeiten unter CDDL aufhebt. Diese Ausnahme gilt jedoch nicht für andere Distributionen.
Eine Problemumgehung besteht darin, nur den Quellcode des Moduls in der Distribution bereitzustellen, was nicht zu einer Bündelung führt und als Lieferung zweier separater Produkte betrachtet wird. In Debian wird hierfür das DKMS-System (Dynamic Kernel Module Support) verwendet, bei dem das Modul im Quellcode bereitgestellt und unmittelbar nach der Installation des Pakets auf dem System des Benutzers assembliert wird.
Source: opennet.ru