Messages in this thread | | | Date | Sun, 28 Apr 2002 23:52:14 -0700 | From | Chris Wright <> | Subject | Re: How to enable printk |
| |
* Wanghong Yuan (wyuan1@ews.uiuc.edu) wrote: > Hi, > > It may be a simple question. But I cannot see the result of printk in > console like the following. Do i need to enable it somewhere? Thanks
Take a look a man 8 dmesg. Also Documentation/sysctl/kernel.txt.
> /*-O2 -Wall -DMODULE -D__KERNEL__ -DLINUX -c testsys.c */ > > #include <linux/sys.h> > #include <linux/mm.h> > #include <linux/module.h> > #include <linux/kernel.h> > #include <linux/sched.h> > #include <sys/syscall.h> > #include <asm/uaccess.h> > > > /* The system call number we attempt to install ourselves as. */ > static int syscall_num = 165;
I hope you know this can't be done safely (race free).
> asmlinkage int sys_test(int pid, int period, int cycles, int* ptr) > > { > > put_user(current->pid, ptr); > return pid-10000; > > } > > extern int sys_call_table[]; > > #ifdef MODULE > int init_module(void) > { > printk("yes\n"); > sys_call_table[syscall_num] = (int)sys_test; > return 0; > } > > void cleanup_module(void) > { > sys_call_table[syscall_num] = 0;
this could cause a problem. you should save the original entry when you insmod and restore it here ;-)
> } > > #endif /* MODULE */
btw, take a look at how the module_init() and module_exit() macros are used in the kernel.
hope that helps, -chris - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |