Linus Torvalds a expliqué les problèmes de l'implémentation de ZFS dans le noyau Linux

Lors de la discussion des tests du planificateur de tâches, un des participants à la discussion a donné l'exemple que, malgré les déclarations concernant la nécessité de maintenir la compatibilité lors du développement du noyau Linux, les récents changements dans le noyau ont perturbé le bon fonctionnement du module «ZFS sur Linux« Linus Torvalds a répondu, ce qui signifie que le principe «ne pas casser des utilisateurs» concerne la préservation des interfaces externes du noyau utilisées par les applications dans l'espace utilisateur, ainsi que du noyau lui-même. Mais cela n'inclut pas les couches tierces développées séparément sur le noyau, qui n'ont pas été intégrées dans le noyau principal, dont les auteurs doivent, à leurs risques et périls, suivre les modifications apportées au noyau.

En ce qui concerne le projet « ZFS sur Linux », Linus a déconseillé l'utilisation du module zfs en raison de l'incompatibilité des licences CDDL et GPLv2. La situation actuelle est que, en raison de la politique de licence de la société Oracle, les chances que ZFS entre un jour dans le noyau principal sont très faibles. Les solutions proposées pour contourner l'incompatibilité des licences, qui traduisent l'accès aux fonctionnalités du noyau pour un code externe, restent une solution douteuse — les juristes continuent de débattre de savoir si la réexportation des fonctions GPL du noyau via des wrappers constitue une œuvre dérivée, qui doit être fournie sous licence GPL.

La seule option à laquelle Linus accepterait d'intégrer le code ZFS dans le noyau principal serait d'obtenir une autorisation officielle de la part de la société Oracle, validée par le conseiller juridique principal, ou mieux, par Larry Ellison lui-même. Les solutions intermédiaires, telles que les couches entre le noyau et le code ZFS, sont inacceptables, compte tenu de la politique agressive d'Oracle en matière de propriété intellectuelle sur les interfaces de programmation (comme exemple, le litige avec Google concernant l'API Java). De plus, Linus considère le désir d'utiliser ZFS comme une simple mode, et non comme un avantage technique. Les tests de performance que Linus a examinés ne plaident pas en faveur de ZFS, et l'absence de maintenance adéquate ne garantit pas la stabilité à long terme.

Rappelons que le code ZFS est distribué sous la licence libre CDDL, qui est incompatible avec la GPLv2. Cela empêche l'intégration de ZFS on Linux dans la branche principale du noyau Linux, car le mélange de code sous les licences GPLv2 et CDDL est inacceptable. Pour contourner cette incompatibilité de licence, le projet « ZFS on Linux » a décidé de distribuer le produit entièrement sous la licence CDDL sous forme de module séparément téléchargeable, qui est fourni indépendamment du noyau.

La possibilité de distribuer le module ZFS prêt à l'emploi dans les distributions suscite des débats parmi les avocats. Les avocats de l'organisation Software Freedom Conservancy (SFC) estiment, estiment que la fourniture d'un module binaire de noyau dans une distribution constitue un produit combiné avec GPL, avec l'exigence de diffuser le travail final sous GPL. Les avocats de la société Canonical ne sont pas d'accord et soutiennent que la fourniture du module ZFS est autorisée si le composant est fourni sous la forme d'un module autonome, séparément du paquet contenant le noyau. Canonical note que depuis longtemps, les distributions utilisent cette approche pour fournir des pilotes propriétaires, comme les pilotes NVIDIA.

L'autre partie rétorque que le problème de compatibilité avec le noyau dans les pilotes propriétaires est résolu par la fourniture d'une petite couche, distribuée sous la licence GPL (un module sous licence GPL est chargé dans le noyau, qui charge ensuite les composants propriétaires). Pour ZFS, une telle couche ne peut être préparée que si des exceptions de licence sont fournies par Oracle. Dans Oracle Linux, l'incompatibilité avec la GPL est résolue par la fourniture par Oracle d'une exception de licence, levant l'exigence de licencier le travail combiné sous CDDL, mais cette exception ne s'applique pas aux autres distributions.

Un moyen de contourner cela consiste à ne fournir que le code source du module dans la distribution, ce qui ne conduit pas à un lien et est considéré comme la fourniture de deux produits séparés. Dans Debian, le système DKMS (Dynamic Kernel Module Support) est utilisé à cet effet, où le module est fourni en code source et est compilé sur le système de l'utilisateur, directement après l'installation du paquet.

Source : opennet.ru

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster