LINUX.ORG.RU

Сборка модуля ядра (WARNING: «f» [m] undefined!)


0

1

Здравствуйте. Пытаюсь собрать tuxguardian-0.5 , система kubuntu 10.04 ядро 2.6.34.8 самосборное, с поддержкой LSM. Программа полность компилируется, daemon и frontend запускаются, проблема с модулем tuxg При сборке модуля:

make -C /lib/modules/2.6.34.8-custom/build/ SUBDIRS=/home/pulo/tuxguardian-0.5/module modules
make[1]: Вход в каталог `/usr/src/linux-2.6.34.8'
Building modules, stage 2.
MODPOST 1 modules
WARNING: "cap_bprm_set_creds" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "cap_ptrace_access_check" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "cap_capable" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "cap_task_fix_setuid" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "cap_bprm_secureexec" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "cap_capset" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "cap_capget" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "cap_ptrace_traceme" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
WARNING: "register_security" [/home/pulo/tuxguardian-0.5/module/tuxg.ko] undefined!
CC /home/pulo/tuxguardian-0.5/module/tuxg.mod.o
LD [M] /home/pulo/tuxguardian-0.5/module/tuxg.ko
make[1]: Выход из каталога `/usr/src/linux-2.6.34.8'
при загрузке модуля:
sudo modprobe tuxg
FATAL: Error inserting tuxg (/lib/modules/2.6.34.8-custom/tuxg.ko): Unknown symbol in module, or unknown parameter (see dmesg)

в dmesg:

[13714.547835] tuxg: Unknown symbol register_security
[13714.548063] tuxg: Unknown symbol cap_ptrace_traceme
[13714.548182] tuxg: Unknown symbol cap_capget
[13714.548297] tuxg: Unknown symbol cap_capset
[13714.548412] tuxg: Unknown symbol cap_bprm_secureexec
[13714.548527] tuxg: Unknown symbol cap_task_fix_setuid
[13714.548711] tuxg: Unknown symbol cap_capable
[13714.548827] tuxg: Unknown symbol cap_ptrace_access_check
[13714.549078] tuxg: Unknown symbol cap_bprm_set_creds
однако адреса есть в system.map
grep cap_ptrace_access_check /boot/System.map-`uname -r`
ffffffff813212d0 T cap_ptrace_access_check
в исходнике есть MODULE_LICENSE(«GPL»); собственно кто нибудь сталкивался с такой проблемой? в гугле решения не нашел. исходник


Ну не экспортируются эти символы в новых ядрах, что поделаешь?

frey ★★
()

Найди их в сорцах ядра и погляди, экспортируются ли они. Видимо нет. Тогда поищи им замену или тупо пропатч ядро (если тебе этот вариант подходит).

Pavval ★★★★★
()
Ответ на: комментарий от Pavval

Ага, не экспортируются, пришлось вставить EXPORT_SYMBOL_GPL();

pulo
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.