Usulkan untuk memblokir driver yang menyediakan akses ke panggilan GPL ke kernel Linux

Logo Kernel Linux, Tux

Christoph Hellwig, pengembang kernel Linux terkemuka yang pernah menjadi anggota komite pengarah teknis Linux Foundation dan menggugat dalam litigasi GPL terhadap VMware.

Dia telah mengusulkan pengetatan perlindungan melawan ikatan driver berpemilik untuk mengekspor komponen kernel Linux hanya untuk modul yang dilisensikan di bawah GPL.

Untuk menghindari pembatasan untuk mengekspor simbol GPL, produsen pengontrol berpemilik menggunakan modul lapisan, yang kodenya open source dan didistribusikan di bawah lisensi GPLv2, tetapi fungsinya bertujuan untuk meneruskan akses pengontrol pemilik ke API file kernel, yang penggunaannya dilarang langsung dari kode kepemilikan.

Untuk memblokir manuver seperti itu, Christoph Helwig menyiapkan tambalan untuk kernel Linux yang memastikan warisan dari bendera yang terkait dengan ekspor simbol GPL.

Kami mengalami kesalahan dalam resolusi modul _GPL kami sejak hari pertama,
yaitu, modul dapat mengklaim sebagai berlisensi GPL dan menggunakan ekspor _GPL, sementara juga mengandalkan simbol modul non-GPL. Ini digunakan sebagai pengelakan ekspor _GPL dengan menggunakan modul shim kecil yang menggunakan ekspor _GPL dan fungsi lainnya.

Proposal itu bermuara pada mewarisi indikator TAINT_PROPRIETARY_MODULE di semua modul yang mengimpor simbol modul dengan tanda ini.

Oleh karena itu, jika modul lapisan tengah GPL mencoba mengimpor simbol dari modul non-GPL, modul GPL akan mewarisi tag TAINT_PROPRIETARY_MODULE dan tidak akan dapat mengakses komponen kernel yang hanya tersedia untuk modul berlisensi GPL, meskipun modul tersebut sebelumnya diimpor simbol dari "gplonly".

Patch Hellwig sekarang mencoba membuat ini sulit. Modul yang mengimpor simbol kepemilikan ditandai sebagai milik dan tidak memiliki akses ke simbol GPL. 

Perubahan itu diusulkan sebagai tanggapan atas serangkaian tambalan yang dirilis oleh insinyur Facebook dengan penerapan subsistem netgpu baru, yang memungkinkan pertukaran data langsung (tanpa salinan DMA) antara kartu jaringan dan GPU, saat melakukan pemrosesan protokol oleh CPU.

Ini akan menghindari metode yang semula direncanakan oleh Jonathan Lemon untuk patch Anda dan akan membuat pengembangan interlayers menghilangkan simbol GPL menjadi jauh lebih sulit, meskipun masih ada celah kecil, seperti yang ditunjukkan.

Dalam diskusi yang mereka lakukan berbagai pengembang kernel Linux juga pemblokiran terbalik disarankan: jika modul mengimpor simbol EXPORT_SYMBOL_GPL, simbol yang diekspor oleh modul tersebut tidak boleh diimpor oleh modul yang tidak secara eksplisit mengklaim kompatibilitas GPL.

Mereka yang tidak memiliki modul mengimpor simbol EXPORT_SYMBOL_GPL, semua simbol yang diekspor harus diperlakukan sebagai EXPORT_SYMBOL_GPL.

Christoph Helwig menulis bahwa dia setuju 100% dengan proposal ini, tetapi Linus Torvalds tidak akan melewatkan perubahan itu karena akan membuat sebagian besar subsistem kernel tidak tersedia untuk driver berpemilik, karena fakta bahwa ketika mengembangkan driver, simbol dasar diekspor di bawah GPL

Pengembang tidak puas dengan ketersediaan implementasi hanya untuk driver NVIDIA berpemilik melalui lapisan GPL yang disediakan oleh driver ini.

Menanggapi kritik, penulis tambalan menunjukkan bahwa subsistem tidak ditautkan ke NVIDIA dan dukungannya dapat diberikan, antara lain, untuk antarmuka perangkat lunak untuk GPU AMD dan Intel.

Akibatnya, promosi netgpu di dalam kernel dianggap tidak mungkin sampai ketersediaan dukungan yang berfungsi berdasarkan driver gratis seperti AMDGPU, Intel i915 atau Nouveau.

Anda harus mengingatnya di masa lalu, komunitas kernel Linux memiliki menerapkan berbagai perubahan yang disadari atau sebagai efek samping, telah menghambat pengembangan modul berpemilik atau tidak kompatibel dengan lisensi.

Akhirnya jika Anda ingin tahu lebih banyak tentang itu, Anda dapat memeriksa detailnya dengan pergi ke tautan berikut.

sumber: https://lkml.org/


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Bertanggung jawab atas data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   David dijo

    Mungkin lebih baik artikel ini ditulis dalam bahasa Inggris daripada menggunakan penerjemah. Ada banyak bagian yang tidak dapat saya pahami.