По време на дискусията
Що се отнася до проекта ZFS on Linux, Линус не препоръчва използването на модула zfs поради несъвместимостта на лицензите CDDL и GPLv2. Ситуацията е, че поради лицензионната политика на Oracle, шансовете ZFS някога да успее да влезе в основното ядро са много малки. Слоевете, предложени за заобикаляне на несъвместимостта на лицензирането, които превеждат достъпа до функциите на ядрото към външен код, са съмнително решение - продължават адвокатите
Единственият вариант, при който Линус би се съгласил да приеме ZFS кода в основното ядро, е да получи официално разрешение от Oracle, заверено от главния адвокат или още по-добре от самия Лари Елисън. Междинни решения, като слоеве между ядрото и ZFS кода, не са разрешени, като се има предвид агресивната политика на Oracle по отношение на интелектуалната собственост на програмните интерфейси (например,
Нека ви напомним, че ZFS кодът се разпространява под безплатен CDDL лиценз, който е несъвместим с GPLv2, което не позволява ZFS на Linux да бъде интегриран в основния клон на ядрото на Linux, тъй като смесването на код под GPLv2 и CDDL лицензи е неприемливо. За да заобиколи тази лицензионна несъвместимост, проектът ZFS on Linux реши да разпространи целия продукт под CDDL лиценз под формата на отделно зареден модул, който се доставя отделно от ядрото.
Възможността за разпространение на готов ZFS модул като част от комплекти за разпространение е спорна сред юристите. Юристи от Software Freedom Conservancy (SFC)
Другата страна контрира, че проблемът със съвместимостта на ядрото в патентованите драйвери се решава чрез предоставяне на малък слой, разпространяван под GPL лиценз (модул под GPL лиценз се зарежда в ядрото, което вече зарежда частни компоненти). За ZFS такъв слой може да бъде подготвен само ако са предоставени изключения за лиценз от Oracle. В Oracle Linux несъвместимостта с GPL се разрешава чрез Oracle предоставяне на лицензно изключение, което премахва изискването за лицензиране на комбинирана работа под CDDL, но това изключение не се прилага за други дистрибуции.
Заобиколно решение е да се предостави само изходният код на модула в дистрибуцията, което не води до групиране и се счита за доставка на два отделни продукта. В Debian за това се използва системата DKMS (Dynamic Kernel Module Support), при която модулът се доставя в изходен код и се сглобява в системата на потребителя веднага след инсталирането на пакета.
Източник: opennet.ru