اقترح حظر برامج التشغيل التي توفر الوصول إلى مكالمات GPL إلى Linux kernel

شعار Kernel Linux ، Tux

كريستوف هيلويج ، مطور نواة Linux بارز كان ذات يوم عضوًا في اللجنة التوجيهية الفنية لمؤسسة Linux وقد رفع دعوى قضائية في دعوى GPL ضد VMware.

لقد اقترح تشديد الحماية ضد الربط سائقي الملكية لمكونات Linux kernel المصدرة فقط للوحدات النمطية المرخصة بموجب GPL.

لتجنب القيود لتصدير رموز GPL ، تستخدم الشركات المصنعة لوحدات التحكم الملكية وحدة طبقة ، رمزه مفتوح المصدر ويتم توزيعه بموجب ترخيص GPLv2 ، لكن الوظائف تتلخص في تمرير وصول وحدة تحكم المالك إلى واجهات برمجة التطبيقات ملفات kernel ، التي يُحظر استخدامها مباشرة من التعليمات البرمجية الاحتكارية.

لمنع مثل هذه المناورة ، أعد كريستوف هيلويج تصحيحات لنواة لينكس تضمن الوراثة من الأعلام المرتبطة بتصدير رموز GPL.

حدث خطأ في حل وحدة _GPL منذ اليوم الأول ،
بمعنى ، يمكن للوحدة أن تدعي أنها مرخصة من GPL وأن تستخدم عمليات تصدير _GPL ، مع الاعتماد أيضًا على رموز الوحدات بخلاف GPL. يتم استخدام هذا كتحايل على عمليات تصدير _GPL باستخدام وحدة تجميع البيانات الصغيرة التي تستخدم عمليات تصدير _GPL ووظائف أخرى.

يتلخص الاقتراح في وراثة المؤشر TAINT_PROPRIETARY_MODULE في جميع الوحدات النمطية التي تستورد رموز الوحدة مع هذه العلامة.

لذلك ، إذا حاولت وحدة الطبقة الوسطى في GPL استيراد رموز من وحدة غير تابعة لـ GPL ، فإن وحدة GPL سترث علامة TAINT_PROPRIETARY_MODULE ولن تكون قادرة على الوصول إلى مكونات kernel المتاحة فقط للوحدات النمطية المرخصة لـ GPL ، حتى لو تم استيراد الوحدة مسبقًا رموز من "gplonly".

تحاول رقعة Hellwig الآن جعل هذا الأمر صعبًا. الوحدات التي تستورد رموز الملكية مميزة بعلامات الملكية ولا يمكنها الوصول إلى رموز GPL. 

تم اقتراح التغيير استجابة لسلسلة من التصحيحات التي تم إصدارها بواسطة مهندس Facebook مع تنفيذ نظام فرعي جديد netgpu ، والذي يسمح بتبادل البيانات المباشر (صفر نسخة DMA) بين بطاقة الشبكة ووحدة معالجة الرسومات ، أثناء تنفيذ معالجة البروتوكول بواسطة وحدة المعالجة المركزية.

هذا من شأنه تجنب الطريقة التي خطط لها في الأصل جوناثان ليمون من أجل التصحيحات الخاصة بك وسيؤدي تطوير الطبقات البينية إلى حذف رمز GPL تكون أكثر صعوبة، حتى لو كانت لا تزال هناك فجوة صغيرة ، كما هو موضح.

في المناقشة التي يجرونها حاليا العديد من مطوري نواة Linux أيضًا تم اقتراح الحظر العكسي: إذا قامت وحدة ما باستيراد رموز EXPORT_SYMBOL_GPL ، فلا يجب استيراد الرموز التي تم تصديرها بواسطة هذه الوحدة بواسطة وحدات لا تدعي صراحة توافق GPL.

أولئك الذين ليس لديهم وحدة يستوردون رموز EXPORT_SYMBOL_GPL ، يجب معاملة جميع رموزهم المصدرة على أنها EXPORT_SYMBOL_GPL.

كتب كريستوف هيلويج أنه يوافق 100٪ على هذا الاقتراح ، لكن لن يفوت Linus Torvalds هذا التغيير لأنه سيجعل معظم أنظمة النواة الفرعية غير متاحة للسائقين المملوكين ، نظرًا لحقيقة أنه عند تطوير برامج التشغيل ، يتم تصدير الرموز الأساسية بموجب GPL

لم يكن المطورون راضين عن توفر التطبيق فقط لمحركات NVIDIA الخاصة من خلال طبقة GPL التي توفرها برامج التشغيل هذه.

ردا على النقد ، أشار مؤلف التصحيح إلى أن النظام الفرعي غير مرتبط بـ NVIDIA ويمكن تقديم دعمها ، من بين أمور أخرى ، لواجهات البرامج لوحدات معالجة الرسومات AMD و Intel.

نتيجة لذلك ، تم اعتبار الترويج لـ netgpu في النواة مستحيلًا حتى توفر دعم العمل استنادًا إلى برامج التشغيل المجانية مثل AMDGPU أو Intel i915 أو Nouveau.

عليك أن تتذكر ذلك في الماضي، يمتلك مجتمع Linux kernel نفذت مجموعة متنوعة من التغييرات عن علم أو كأثر جانبي ، أعاقت تطوير وحدات الملكية أو غير متوافق مع التراخيص.

أخيرا إذا كنت تريد معرفة المزيد عنها، يمكنك التحقق من التفاصيل بالذهاب للرابط التالي.

مصدر: https://lkml.org/


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: AB Internet Networks 2008 SL
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   ديفيد قال

    ربما يكون من الأفضل وضع المقال باللغة الإنجليزية بدلاً من استخدام مترجم. هناك أجزاء كثيرة غير مفهومة بالنسبة لي.