Imungkahi na harangan ang mga driver na nagbibigay ng pag-access sa mga tawag sa GPL sa kernel ng Linux

Logo ng Linux Kernel, Tux

Christoph Hellwig, isang kilalang developer ng kernel ng Linux na dating miyembro ng komite ng patnubay sa teknikal ng Linux Foundation at nag-demanda sa isang paglilitis sa GPL laban sa VMware.

Iminungkahi niya na higpitan ang mga proteksyon laban sa pagtali pagmamay-ari ng mga driver upang mai-export ang mga bahagi ng kernel ng Linux para lamang sa mga module na lisensyado sa ilalim ng GPL.

Upang maiwasan ang paghihigpit i-export ang mga simbolo ng GPL, ang mga tagagawa ng pagmamay-ari ng controller ay gumagamit ng isang layer module, na ang code ay bukas na mapagkukunan at ipinamamahagi sa ilalim ng lisensya ng GPLv2, ngunit ang mga pag-andar ay kumukulo sa pagpasa sa pag-access ng may-ari ng kontrol sa mga API mga kernel file, ang paggamit nito ay ipinagbabawal nang direkta mula sa pagmamay-ari na code.

Upang harangan ang naturang isang mapaglalangan, Naghanda si Christoph Helwig ng mga patch para sa Linux kernel na tinitiyak ang mana ng mga watawat na nauugnay sa pag-export ng mga simbolo ng GPL.

Nagkaroon kami ng isang error sa aming resolusyon ng module na _GPL mula pa noong unang araw,
iyon ay, ang isang module ay maaaring mag-angkin na lisensyado ng GPL at gumamit ng _GPL na pag-export, habang umaasa rin sa mga simbolo ng hindi GPL module. Ginagamit ito bilang isang pag-iwas sa pag-export ng _GPL sa pamamagitan ng paggamit ng isang maliit na module na shim na gumagamit ng _GPL export at iba pang pagpapaandar.

Ang panukala ay bumababa sa pagmamana ng tagapagpahiwatig TAINT_PROPRIETARY_MODULE sa lahat ng mga module na nag-i-import ng mga simbolo ng module na may bandila na ito.

Samakatuwid, kung ang isang module ng gitnang layer ng GPL ay sumusubok na mag-import ng mga simbolo mula sa isang hindi GPL module, ang module ng GPL ay magmamana ng TAINT_PROPRIETARY_MODULE na tag at hindi ma-access ang mga bahagi ng kernel na magagamit lamang sa mga lisensyadong module ng GPL, kahit na ang module ay dating na-import. mga simbolo mula sa "gplonly".

Sinusubukan ngayon ng patch ni Hellwig na pahirapan ito. Ang mga module na nag-i-import ng pagmamay-ari na mga simbolo ay minarkahang pagmamay-ari at walang access sa mga simbolo ng GPL. 

Iminungkahi ang pagbabago bilang tugon sa isang serye ng mga patch na inilabas ng isang inhinyero sa Facebook na may pagpapatupad ng isang bagong netgpu subsystem, na nagpapahintulot sa direktang pagpapalitan ng data (zero copy DMA) sa pagitan ng network card at ng GPU, habang isinasagawa ang pagproseso ng protocol ng CPU.

Maiiwasan nito ang pamamaraang orihinal na binalak ni Jonathan Lemon para sa iyong mga patch at gagawin ang pag-unlad ng mga interlayer upang alisin ang simbolo ng GPL mas mahirap, kahit na mayroong pa isang maliit na puwang, tulad ng ipinahiwatig.

Sa talakayan na kasalukuyang ginagawa nila iba't ibang mga Linux kernel developer din iminungkahi ng reverse block: Kung ang isang module ay nag-i-import ng mga simbolo ng EXPORT_SYMBOL_GPL, ang mga simbolo na na-export ng module na iyon ay hindi dapat mai-import ng mga module na hindi malinaw na inaangkin ang pagiging tugma ng GPL.

Ang mga walang modyul na pag-import ng mga simbolo ng EXPORT_SYMBOL_GPL, ang lahat ng kanilang mga na-export na simbolo ay dapat tratuhin bilang EXPORT_SYMBOL_GPL.

Sinulat ni Christoph Helwig na sumasang-ayon siya sa 100% sa panukalang ito, ngunit hindi makaligtaan ni Linus Torvalds ang pagbabagong iyon dahil gagawin nitong hindi magagamit ang karamihan sa mga subsystem ng kernel sa pagmamay-ari ng mga driver, dahil sa ang katunayan na kapag bumubuo ng mga driver ang mga pangunahing simbolo ay na-export sa ilalim ng GPL

Ang mga developer ay hindi nasiyahan sa pagkakaroon ng pagpapatupad lamang para sa pagmamay-ari ng mga driver ng NVIDIA sa pamamagitan ng layer ng GPL na ibinigay ng mga driver na ito.

Bilang tugon sa pagpuna, ipinahiwatig ng may-akda ng patch na ang subsystem ay hindi naka-link sa NVIDIA at ang suporta nito ay maaaring ibigay, bukod sa iba pang mga bagay, para sa mga interface ng software para sa mga AMD at Intel GPU.

Bilang isang resulta, ang promosyon ng netgpu sa kernel ay itinuring imposible hanggang sa pagkakaroon ng nagtatrabaho na suporta batay sa mga libreng driver tulad ng AMDGPU, Intel i915 o Nouveau.

Dapat mong tandaan iyon sa nakaraan, mayroon ang pamayanan ng Linux kernel nagpatupad ng iba`t ibang mga pagbabago na alam o bilang isang epekto, hadlangan ang pagbuo ng pagmamay-ari na mga module o hindi tugma sa mga lisensya.

Sa wakas kung nais mong malaman ang tungkol dito, maaari mong suriin ang mga detalye sa pamamagitan ng pagpunta sa sumusunod na link.

Fuente: https://lkml.org/


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: AB Internet Networks 2008 SL
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   David dijo

    Marahil ay mas mahusay na ilagay ang artikulo sa Ingles sa halip na gumamit ng isang tagasalin. Maraming bahagi na hindi maintindihan sa akin.