Talk:FAQ

From OpenZFS
Jump to navigation Jump to search

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.

Usability of Oracle ZFS pool versions 29 and greater

The current statement –  … not compatible – is relatively blunt and does not do justice to related projects.

Should we:

a) add a page, Usability of Oracle ZFS pool versions 29 and greater; or

b) attempt to organise the projects page to reflect peoples' interests in compatibility with Oracle ZFS?

For what it's worth, at the time of writing I favour a separate page because:

  • (unless I'm mistaken) I recall reading that an import of v29 or greater may be (-f) forced with at least one flavour of OpenZFS … and I assume that readonly=on would be sane … and use in this way would be unsupported, and so on – that's too much for an answer to an FAQ (aim to keep the FAQ page short and sweet) and debatably not a good fit with the projects page.