“modinfo --field”可能的值?

“modinfo --field”可能的值?

modinfo --field允许过滤“作者”、“描述”等字段,这很好。

问题:我在哪里可以找到可能值的完整列表--field

到目前为止我尝试过的:

  • man 8 modinfo提到了一些“共同领域”,这让我觉得“你可能最了解你在寻找什么”
  • 通过 grep 浏览源代码,除了 in 之外./kmod-9/tools/modinfo.c,我几乎什么也没找到,这对我没有多大帮助,因为我对 C 是文盲(是的,我通过 grep 浏览了整个kmod包,找到了相当多的术语)
  • 内核模块编程指南:参见上面的观点
  • 我可能错过了一些重要的事情...

答案1

modinfo.modinfo从内核模块部分提取信息。该信息通常会出现在该部分中,因为内核模块作者添加了如下部分:

MODULE_DESCRIPTION("Joe's awesome driver");
MODULE_AUTHOR("Joe Blow<[email protected]>");
MODULE_LICENSE("GPL");

也许这一点很清楚 - 但重点是没有明确的列表,因为驱动程序作者可以添加他们想要的任何自由格式信息,例如:

MODULE_INFO(my_cool_field, "Wow, so cool");

有一些共同的领域。

并且,上述的另一点是程序modinfo不知道有哪些字段 - 它只是在.modinfo节模块中搜索它们。

后续:在Linux源中grepping include/linux/module.h,我看到定义了以下宏:

#define MODULE_ALIAS(_alias) MODULE_INFO(alias, _alias)
#define MODULE_LICENSE(_license) MODULE_INFO(license, _license)
#define MODULE_AUTHOR(_author) MODULE_INFO(author, _author)
#define MODULE_DESCRIPTION(_description) MODULE_INFO(description, _description)
#define MODULE_VERSION(_version) MODULE_INFO(version, _version)
#define MODULE_FIRMWARE(_firmware) MODULE_INFO(firmware, _firmware)

相关内容