Foreslå at blokere drivere, der giver adgang til GPL-opkald til Linux-kernen

Kernel Linux, Tux

Christoph Hellwig, en fremtrædende Linux-kerneudvikler, der engang var medlem af Linux Foundation's tekniske styringsudvalg og sagsøgte i en GPL-retssag mod VMware.

Han har foreslået at stramme beskyttelsen imod at binde proprietære drivere til eksporterede Linux-kernekomponenter kun for moduler licenseret under GPL.

For at undgå begrænsning at eksportere GPL-symboler, proprietære controller-producenter bruger et lagmodul, hvis kode er open source og distribueres under GPLv2-licensen, men funktionerne koges ned til at give ejerens controller adgang til API'erne kernefiler, hvis brug er forbudt direkte fra den proprietære kode

For at blokere en sådan manøvre, Christoph Helwig forberedte programrettelser til Linux-kernen, der sikrer arv af flagene, der er forbundet med eksporten af ​​GPL-symboler.

Vi har haft en fejl i vores _GPL-modulopløsning siden første dag,
et modul kan hævde at være GPL-licenseret og bruge _GPL-eksport, mens det også er afhængig af ikke-GPL-modulsymboler. Dette bruges som omgåelse af _GPL-eksport ved hjælp af et lille indpakningsmodul, der bruger _GPL-eksport og anden funktionalitet.

Forslaget handler om at nedarve indikatoren TAINT_PROPRIETARY_MODULE i alle moduler, der importerer modulsymboler med dette flag.

Derfor, hvis et GPL-mellemlagsmodul forsøger at importere symboler fra et ikke-GPL-modul, vil GPL-modulet arve TAINT_PROPRIETARY_MODULE-koden og vil ikke være i stand til at få adgang til kernekomponenterne, der kun er tilgængelige for GPL-licenserede moduler, selvom modulet tidligere importeret symboler fra "gplonly".

Hellwigs patch forsøger nu at gøre dette vanskeligt. Moduler, der importerer proprietære symboler, er markeret som proprietære og har ikke adgang til GPL-symboler. 

Ændringen blev foreslået som svar på en række patches frigivet af en Facebook-ingeniør med implementeringen af ​​et nyt netgpu-undersystem, som muliggør direkte dataudveksling (nul kopi DMA) mellem netværkskortet og GPU'en, mens protokollen behandles af CPU'en.

Dette ville undgå den metode, der oprindeligt var planlagt af Jonathan Lemon til dine patches og ville få udviklingen af ​​mellemlagene til at udelade GPL-symbolet være meget sværere, selvom der stadig er et lille hul, som angivet.

I den diskussion, de har i øjeblikket forskellige Linux-kerneudviklere også omvendt blokering blev foreslået: Hvis et modul importerer EXPORT_SYMBOL_GPL symboler, skal de symboler, der eksporteres af dette modul, ikke importeres af moduler, der ikke udtrykkeligt hævder GPL-kompatibilitet.

Dem uden modul importerer EXPORT_SYMBOL_GPL symboler, alle deres eksporterede symboler skal behandles som EXPORT_SYMBOL_GPL.

Christoph Helwig skrev, at han er 100% enig i dette forslag, men Linus Torvalds vil ikke gå glip af den ændring, da det vil gøre de fleste kernedelsystemer utilgængelige for proprietære drivere, på grund af det faktum, at basissymbolerne eksporteres under GPL

Udviklerne var ikke tilfredse med tilgængeligheden af ​​implementeringen kun for de proprietære NVIDIA-drivere gennem GPL-laget fra disse drivere.

Som reaktion på kritik forfatteren af ​​programrettelsen angav, at delsystemet ikke er knyttet til NVIDIA og dets support kan blandt andet leveres til softwaregrænseflader til AMD og Intel GPU'er.

Som et resultat blev promovering af netgpu i kernen anset for umulig, indtil tilgængeligheden af ​​arbejdsunderstøttelse var baseret på gratis drivere som AMDGPU, Intel i915 eller Nouveau.

Du skal huske det tidligere, Linux-kernesamfundet har implementeret en række ændringer det bevidst eller som en bivirkning, har hindret udviklingen af ​​proprietære moduler eller ikke kompatibel med licenser.

Endelig hvis du vil vide mere om det, kan du kontrollere detaljerne ved at gå til følgende link.

kilde: https://lkml.org/


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for data: AB Internet Networks 2008 SL
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.

  1.   David sagde han

    Måske ville det være bedre at sætte artiklen på engelsk i stedet for at bruge en oversætter. Der er mange dele, der er uforståelige for mig.