2

我正在尝试使用内核 2.6.35-22 在 Ubuntu 10.04 中编译内核模块,它抱怨缺少 proc_root_driver。我做了一些搜索,发现应该定义它,但在我的 linux-headers 版本中,它没有定义。是否应该使用另一个全局变量来代替它,或者有没有办法可以在某处定义它以便内核模块可以编译?

4

1 回答 1

2

proc_root_driver曾经是指向proc_dir_entry创建为的指针proc_mkdir("driver", NULL);。它于 2008 年 4 月在此提交中被删除: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h= 928b4d8c8963e75bdb133f562b03b07f9aa4844a

另外,我不认为它应该是内核 API 的一部分,AFAIK 这是一个内部的东西。

它并没有多大作用,真的。您需要做的就是使用 /proc 下的完整路径,即替换看起来像的代码

proc_array = proc_mkdir("drvnamehere", proc_root_driver);

代码看起来像

proc_array = proc_mkdir("driver/drvnamehere", NULL);

你应该没事。

于 2010-11-15T21:25:44.170 回答