hi all:
the codes is:
#########################################
#include <linux/module.h> // for printk()
#include <linux/mm.h> // for struct page
#include <asm/page.h> // for struct page
#include <asm/pgtable.h> // for ZERO_PAGE
static int __init init_hello( void )
{
int i;
struct page * zero_page;
printk( "\n Kello, the first! \n\n" );
i = 0x100;
zero_page = ZERO_PAGE(&i);
printk(" the ZERO address is %p", zero_page);
return 0;
}
static void __exit exit_hello( void )
{
printk( "\n Goodbye now... \n\n" );
}
MODULE_LICENSE("GPL");
module_init(init_hello);
module_exit(exit_hello);
#########################################
I complier it. by:
#########################################
make -C /lib/modules/`uname -r`/build M=`pwd`
#########################################
the results is:
#########################################
[root@localhost kernel_test]# make -C /lib/modules/`uname -r`/build M=`pwd`
make: Entering directory `/usr/src/kernels/2.6.18-308.el5-x86_64'
CC [M] /opt/lx/kernel/kernel_test/zero.o
Building modules, stage 2.
MODPOST
WARNING: "phys_base" [/opt/lx/kernel/kernel_test/zero.ko] undefined!
LD [M] /opt/lx/kernel/kernel_test/zero.ko
make: Leaving directory `/usr/src/kernels/2.6.18-308.el5-x86_64'
#########################################
I try to find the file which defined the "phys_base", for examples;
phys_base
Defined as a variable in:
But I can't find the file of init.c in my computer. Please tell me some ways to solve it, thank you.
_______________________________________________