Предложение по блокировке драйверов-прослоек, предоставляющих доступ к GPL-вызовам ядра Linux
Для обхода ограничения на экспорт GPL-символов производители проприетарных драйверов используют модуль-прослойку, код которой открыт и распространяется под лицензией GPLv2, но функции сводятся к трансляции доступа проприетарного драйвера к необходимым API ядра, запрещённым для использования из проприетарного кода напрямую. Кристоф Хелвиг (Christoph Hellwig), известный разработчик ядра Linux, в своё время входивший в управляющий технический комитет организации Linux Foundation и выступавший истцом в связанном с GPL судебном разбирательстве с VMware, предложил ужесточить защиту от связывания проприетарных драйверов с компонентами ядра Linux, экспортируемыми только для модулей под лицензией GPL.
Предложение сводится к наследованию флага TAINT_PROPRIETARY_MODULE во всех модулях, импортирующих символы из модулей с данным флагом. Для блокирования подобного манёвра Кристоф Хелвиг подготовил для ядра Linux патчи, обеспечивающие наследование флагов, связанных с экспортом GPL-символов. Таким образом, если GPL модуль-прослойка попытается импортировать символы из не-GPL модуля, то GPL-модуль унаследует метку TAINT_PROPRIETARY_MODULE и не сможет обращаться к компонентам ядра, доступным только для модулей под лицензией GPL, даже если модуль ранее импортировал символы из категории «gplonly».
Недовольство разработчиков вызвала доступность реализации только для проприетарных драйверов NVIDIA через предоставляемую данными драйверами GPL-прослойку. Изменение предложено в ответ на публикацию инженером из Facebook серии патчей с реализацией новой подсистемы netgpu, позволяющей организовать прямой обмен данными (DMA zero-copy) между сетевой картой и GPU, при этом выполняя обработку протокола силами CPU. В итоге продвижение netgpu в ядро было признано невозможным до появления рабочей поддержки на основе свободных драйверов, таких как AMDGPU, Intel i915 или Nouveau. В ответ на критику автор патчей указал, что подсистема не привязана к NVIDIA и её поддержка может быть обеспечена в том числе для программных интерфейсов к GPU AMD и Intel. num=53485 Источник: http://www.opennet.ru/opennews/art.shtml?
Предложение сводится к наследованию флага TAINT_PROPRIETARY_MODULE во всех модулях, импортирующих символы из модулей с данным флагом. Для блокирования подобного манёвра Кристоф Хелвиг подготовил для ядра Linux патчи, обеспечивающие наследование флагов, связанных с экспортом GPL-символов. Таким образом, если GPL модуль-прослойка попытается импортировать символы из не-GPL модуля, то GPL-модуль унаследует метку TAINT_PROPRIETARY_MODULE и не сможет обращаться к компонентам ядра, доступным только для модулей под лицензией GPL, даже если модуль ранее импортировал символы из категории «gplonly».
Для обхода ограничения на экспорт GPL-символов производители проприетарных драйверов используют модуль-прослойку, код которой открыт и распространяется под лицензией GPLv2, но функции сводятся к трансляции доступа проприетарного драйвера к необходимым API ядра, запрещённым для использования из проприетарного кода напрямую. Кристоф Хелвиг (Christoph Hellwig), известный разработчик ядра Linux, в своё время входивший в управляющий технический комитет организации Linux Foundation и выступавший истцом в связанном с GPL судебном разбирательстве с VMware, предложил ужесточить защиту от связывания проприетарных драйверов с компонентами ядра Linux, экспортируемыми только для модулей под лицензией GPL.
Недовольство разработчиков вызвала доступность реализации только для проприетарных драйверов NVIDIA через предоставляемую данными драйверами GPL-прослойку. Изменение предложено в ответ на публикацию инженером из Facebook серии патчей с реализацией новой подсистемы netgpu, позволяющей организовать прямой обмен данными (DMA zero-copy) между сетевой картой и GPU, при этом выполняя обработку протокола силами CPU. В итоге продвижение netgpu в ядро было признано невозможным до появления рабочей поддержки на основе свободных драйверов, таких как AMDGPU, Intel i915 или Nouveau. В ответ на критику автор патчей указал, что подсистема не привязана к NVIDIA и её поддержка может быть обеспечена в том числе для программных интерфейсов к GPU AMD и Intel. num=53485 Источник: http://www.opennet.ru/opennews/art.shtml?
Дата публикации: 04-08-2020
Ещё новости
27.08.2022 Первоначально сиквел A Plague Tale Innocence не планировался
В такую ситуацию, например, попала A Plague Tale Requiem — сиквел A Plague Tale Innocence про приключения преследуемых инквизицией брата и сестры Гуго и Амиции. Игровая индустрия не всегда предстаёт перед...
27.08.2022 Xiaomi отказалась работать с DxOMark. Лабораторию обвиняют в продаже оценок, глава компании ответил на критику
Впоследствии в DxOMark заявили о покупке Xiaomi 12S Ultra для тестирования. Не так давно Лэй Цзюнь сообщил, что Xiaomi 12S Ultra не будет отправлен на тестирование в лабораторию DxOMark, что вызвало бурные...
27.08.2022 10 самых дорогих пород кошек в мире: пушистые драгоценности
Он может весить около 13,5 кг, открывать двери и стоить вам примерно 125 000 долларов. Ашера — помесь африканского сервала, азиатской леопардовой кошки и домашней кошки — была выведена калифорнийской компанией...
27.08.2022 В России нашли место с самыми дешевыми «параллельными» iPhone
Практически во всех точках «Горбушки», специализирующийся на технике, есть все актуальные модели iPhone в разных цветах и версиях памяти. По данным Forbes, дефицита смартфонов Apple у частников не обнаружено....
30.10.2022 Практически детективная история с JAC JS4. Кроссоверы продают в России, но официально об этом ничего не говорится
В четверг компания официально анонсировала мероприятие, но уже в пятницу, за несколько часов до анонса, из Сети удалили ссылки на прямую трансляцию. Практически детективная история случилась с кроссовером...
Все новости