Re: Loadable module and kernel gp

From: Christian Hildner <>
Date: 2004-01-26 19:05:30
Luck, Tony schrieb:

>>>>>>>On Fri, 23 Jan 2004 10:52:00 +0100, Christian Hildner 
>><> said:
>>  Christian> Hi, does anybody know a simple way for a loadable module
>>  Christian> to get the gp value of the kernel? Is there any sample
>>  Christian> code?
>>The safest way is probably to materialize a function pointer for a
>>function that is known to be in the kernel (and exported) and then to
>>read the second word.
Yes, that's it, thanks. Sometimes good solutions are also simple. I'll 
try it.

>In case "materialzie a function pointer" is total greek:
>#include <linux/slab.h>
>struct fptr {
>	unsigned long func_addr;
>	unsigned long gp;
>	struct fptr = (struct fptr *)kmalloc; /*function known to be in kernel */
>	printk("Kernel gp is %lx\n", fptr->gp);
>Untested ... kmalloc is declared "inline" so that might mess things
>up.  Just choose some other exported thing if it is.
I hope the compiler will not explode if I request the pointer to an 
inlined function ;-). I like the idea of using kmalloc since this symbol 
should be present in almost any kernel.



To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to
More majordomo info at
Received on Mon Jan 26 03:08:14 2004

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:21 EST