Difference between revisions of "Talk:FAQ"

From OpenZFS
Jump to navigation Jump to search
(Created page with "== Linux Licensing Questions == === What is the conflict between CDDL and GPLv2 licenses? === The [http://opensource.org/licenses/CDDL-1.0 CDDL] and [http://www.gnu.org/lice...")
 
Line 3: Line 3:
=== What is the conflict between CDDL and GPLv2 licenses? ===
=== What is the conflict between CDDL and GPLv2 licenses? ===


The [http://opensource.org/licenses/CDDL-1.0 CDDL] and [http://www.gnu.org/licenses/gpl-2.0.html GPLv2] conflict when you distribute a binary compiled in part from code under the CDDL and in part from code under the GPL where the GPLv2 part is considered to be a derivative work of GPLv2 code. This stems from [http://www.gnu.org/licenses/gpl-2.0.html#section2 section 2b] of the GPLv2. Essentially, a conflict occurs because:
The [http://opensource.org/licenses/CDDL-1.0 CDDL] and [http://www.gnu.org/licenses/gpl-2.0.html GPLv2] conflict when you distribute a binary derived in part from code under the CDDL and in part from code under the GPLv2. The conflict occurs because:
* Any work that is in whole ''or in part'' legally derived from GPLv2 code must '''in whole''' be under the GPLv2.
* [http://www.gnu.org/licenses/gpl-2.0.html#section2 Section 2b] of the GPLv2 requires that works derived, in whole or in part, from GPLv2 code be available in whole under the GPLv2.
* Both the CDDL ([http://opensource.org/licenses/CDDL-1.0 section 3.4]) and the GPLv2 ([http://www.gnu.org/licenses/gpl-2.0.html#section6 section 6]) disallow the imposition of additional restrictions.
* Both the CDDL ([http://opensource.org/licenses/CDDL-1.0 section 3.4]) and the GPLv2 ([http://www.gnu.org/licenses/gpl-2.0.html#section6 section 6]) disallow the imposition of additional restrictions.
Note that the notion of a derivative work is a legal concept and is therefore subject to legal nuances.


==== Does the conflict prevent a merge of ZFS into the Linux source tree? ====
==== Does the conflict prevent a merge of ZFS into the Linux source tree? ====
Line 13: Line 15:
==== Does the conflict prevent redistribution of binary ZFS kernel code for Linux? ====
==== Does the conflict prevent redistribution of binary ZFS kernel code for Linux? ====


[http://linuxmafia.com/faq/Kernel/proprietary-kernel-modules.html Discussions of ports to Linux of proprietary software] as loadable ''kernel modules'' established that ports of code from other operating systems to Linux are '''not''' derivative works of Linux.  
[http://linuxmafia.com/faq/Kernel/proprietary-kernel-modules.html Discussions of ports to Linux of proprietary software] as loadable kernel modules established that ports of code from other operating systems to Linux are '''not''' derivative works of Linux.


It is:  
It is:  
* Fine to build and redistribute binary ZFS ''kernel modules'' (i.e. CONFIG_ZFS=m)
* Fine to build and redistribute binary ZFS kernel modules (i.e. CONFIG_ZFS=m)
* Unacceptable to redistribute any Linux ''kernel binary that contain ZFS code'' (i.e. CONFIG_ZFS=y) – the Linux kernel binary is a derivative work of Linux and must be distributed in whole under the terms of the GPLv2 as per section section 2b of the GPL.
* Unacceptable to redistribute any Linux kernel binary that contain ZFS code (i.e. CONFIG_ZFS=y) – the Linux kernel binary is a derivative work of Linux and must be distributed in whole under the terms of the GPLv2 as per section section 2b of the GPL.


The ZFSOnLinux project also maintains [http://zfsonlinux.org/faq.html#WhatAboutTheLicensingIssue its own FAQ entry on this].
The ZFSOnLinux project also maintains [http://zfsonlinux.org/faq.html#WhatAboutTheLicensingIssue its own FAQ entry on this].

Revision as of 22:18, 26 September 2013

Linux Licensing Questions

What is the conflict between CDDL and GPLv2 licenses?

The CDDL and GPLv2 conflict when you distribute a binary derived in part from code under the CDDL and in part from code under the GPLv2. The conflict occurs because:

  • Section 2b of the GPLv2 requires that works derived, in whole or in part, from GPLv2 code be available in whole under the GPLv2.
  • Both the CDDL (section 3.4) and the GPLv2 (section 6) disallow the imposition of additional restrictions.

Note that the notion of a derivative work is a legal concept and is therefore subject to legal nuances.

Does the conflict prevent a merge of ZFS into the Linux source tree?

No. This would be considered an aggregate redistribution of source code, which is not restricted by either license. The official GPL FAQ explicitly states that the redistribution of aggregates is okay.

Does the conflict prevent redistribution of binary ZFS kernel code for Linux?

Discussions of ports to Linux of proprietary software as loadable kernel modules established that ports of code from other operating systems to Linux are not derivative works of Linux.

It is:

  • Fine to build and redistribute binary ZFS kernel modules (i.e. CONFIG_ZFS=m)
  • Unacceptable to redistribute any Linux kernel binary that contain ZFS code (i.e. CONFIG_ZFS=y) – the Linux kernel binary is a derivative work of Linux and must be distributed in whole under the terms of the GPLv2 as per section section 2b of the GPL.

The ZFSOnLinux project also maintains its own FAQ entry on this.