[lkml]   [2000]   [Oct]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: executing function in kernel whose name is known
>> >> i know the name of a function which is stored in some string in a
>> >> module, is there any way to execute that function.
>> >> That function is implemented in a module and has been exported.
>> >> thanks,
>> >> anil
>> >you mean execute from userspace? No.
>> >You mean execute from kernel space? Yes, but you would need to ensure
>> >module cannot be unloaded (by incrementing its module reference
>> >counter) while the function is invoked.
>> >Tigran
>> module having that function won't be unloaded. but my problem is i know
>> only name (a string containing name of the function) but not function
>> pointer. could you please elaborate on how to do this??

>Indeed, there is a function called get_module_symbol() (in
>kernel/module.c) which gets the address of a symbol in the given module.
>Actually, this doesn't even require kdb -- it is in the plain vanilla
>kernel and is even exported to modules...

thanks Tigran,
i got it working by using get_module_symbol();

its something like


(void*)f = get_module_symbol(NULL, "name of the function");

now you have the funtion pointer you can call as you like

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 12:39    [W:0.019 / U:2.736 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site