[OSy] kallsyms, linux 2.6.18 2.6.20

Martin Decky decky at dsrg.mff.cuni.cz
Mon Apr 23 15:50:09 CEST 2007


Hezky den,

> Zkousime vyuzit kallsyms vyhledavani adres symbolu v linux kernelu,
> ale z nejakych duvodu nam to nefunguje

Z toho popisu bohuzel nevidim zadny duvod, proc by to nemelo fungovat. 
Na zkousku jsem vzal demonstracni priklady kernelovych modulu (viz
http://dsrg.mff.cuni.cz/~ceres/sch/osy/download/20060228-Bures-LinuxDrivers-Examples.zip) 
a do ukazkoveho modulu procmod/procmod.c jsem pridal do funkce 
procmod_init_routine() prikaz:

printk(KERN_INFO "try_name: %p.\n", (void *)
     kallsyms_lookup_name("try_name"));

Na zacatek souboru jsem pochopitelne jeste pridal

#include <linux/kallsyms.h>

Modul se bez problemu prelozil, nacetl se do kernelu a vypsal adresu 
symbolu try_name (kontrolou hodnoty v souboru /proc/kallsyms jsem 
overil, ze to skutecne vratilo spravnou hodnotu).

Zkuste zopakovat tyto kroky a meli byste postupnou eliminaci zjistit, 
kde je problem. Osobne tipuji, ze to bude souviset s procesem buildovani 
modulu (spatna cesta v /lib/modules/<version>/build apod.).


M.D.




More information about the NSWI004 mailing list