La GPLv2 n'interdit pas de placer un bout de code exécutable dans l'espace d'adressage du kernel licencié GPLv2. Malheureusement, le binaire du driver nvidia est un code séparé sans doute n'utilisant que des structures de base (voire pas du tout d'infrastructure du kernel du tout) qui n'est jamais linké au noyau ni au compile time, ni au runtime (*). La GPLv2 est bel et bien impuissante devant ça.
(*) L'opération d'édition des liens est une opération bien spécifique qui patche les adresses des symboles dans le code appelant une librairie ou un autre kernel module pour que les adresses entre les 2 sections exécutables coïncident. Le blob d'nvidia n'est pas du tout lié comme ça d'après ce que j'ai vu du code "source" de la partie gluecode.
[^] # Re: Nintendo
Posté par Mathieu Segaud . En réponse à la dépêche ScummVM dans des jeux Atari, au mépris de la GPL. Évalué à 1.
(*) L'opération d'édition des liens est une opération bien spécifique qui patche les adresses des symboles dans le code appelant une librairie ou un autre kernel module pour que les adresses entre les 2 sections exécutables coïncident. Le blob d'nvidia n'est pas du tout lié comme ça d'après ce que j'ai vu du code "source" de la partie gluecode.