我在一些驱动程序源代码中看到以下行:
MODULE_INFO(retpoline,“ Y”)
是什么?
答案 0 :(得分:2)
此宏定义存储在已编译模块文件中的键/值对。您可以使用modinfo
命令来显示它们。例如,当您编译此模块时,modinfo my_module.ko
将包含一行
retpoline: Y
您可以通过搜索definition来查找宏an LXR interface及其文档(例如它)。它可以由目标文件的defining a symbol in the .modinfo
section工作。
此机制用于内核中加载的模块和modprobe
之类的用户工具所使用的各种元数据。标准元数据包括aliases,license,version等。
retpoline
标记指示模块是针对support for a mitigation使用Spectre构建的。我不知道为什么驱动程序源代码会明确声明这一点:据我了解,在使用retpoline支持进行编译时,应该自动将其插入(通过标头):这是编译器功能,而不是源代码的属性。