/ / Ubuntu proc_root_driver відсутній у <linux / proc_fs.h> - linux, linux-kernel, ubuntu-10.04, kernel-module, procfs

Ubuntu proc_root_driver відсутній в <linux / proc_fs.h> - linux, linux-kernel, ubuntu-10.04, kernel-module, procfs

Я намагаюся скомпілювати модуль ядра в Ubuntu10.04 з ядром 2.6.35-22 і він скаржиться на відсутність proc_root_driver. Я зробив деякі пошуки, і я знайшов, що він повинен визначити це, але в моїй версії linux-заголовки, це не визначено. визначити його десь так, що модуль ядра може компілюватися?

Відповіді:

2 для відповіді № 1

proc_root_driver використовується для покажчика на a proc_dir_entry створено як proc_mkdir("driver", NULL);. Вона була видалена в квітні 2008 року. 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);

і ви повинні бути в порядку.