所有内核构建系统 “Kbuild” 更新今天都已合并,用于即将结束的 Linux 6.16 合并窗口,预计将在明天以 Linux 6.16-rc1 版本结束。值得注意的是 Kbuild pull 引入了 EXPORT_SYMBOL_GPL_FOR_MODULES 帮助程序。
今天添加到 Linux 内核中的是新的 EXPORT_SYMBOL_GPL_FOR_MODULES() 帮助程序。此宏可用于将内核符号的导出限制为给定的模块列表。
引入 EXPORT_SYMBOL_GPL_FOR_MODULES 的补丁中给出的示例是:
EXPORT_SYMBOL_GPL_FOR_MODULES(preempt_notifier_inc, “kvm”);
所以现在很容易限制 GPL 符号只允许被选定的内核模块使用。该宏将导出的元件放入其他模块无法导入的模块命名空间中。可以使用逗号分隔列表使用此宏指定多个模块。该宏还支持 tail-globs 来选择多个模块,如 “drm_*” 作为另一种途径。
除了引入这个新宏外,LInux 6.16 的 Kbuild 拉取还改进了 gendwarfksyms 中的 ABI 处理,并带来了各种其他较小的修复和增强功能。
转自 Linux 6.16 Introduces New Helper For Restricting Symbols To Select Kernel Modules – Phoronix
Linuxeden开源社区