I try to get register values of a NIC , using below module. But wen i try to insmod the module, system hangs. I dont have any clue what is happening, Could you please help me a little. #include <linux/module.h> #include <linux/kernel.h> #include <linux/proc_fs.h> #include <linux/string.h> #include <linux/vmalloc.h> #include <asm/uaccess.h> #include <net/net_namespace.h> #include <linux/if_ether.h> #include <linux/netfilter/xt_time.h> #include <linux/string.h> #include <linux/init.h> #include <linux/netfilter.h> #include <linux/netdevice.h> #include <linux/etherdevice.h> #include <linux/ethtool.h> MODULE_LICENSE("GPL"); MODULE_DESCRIPTION("Fortune Cookie Kernel Module"); MODULE_AUTHOR("M. Tim Jones"); static struct proc_dir_entry *proc_entry; static struct proc_dir_entry *proc_dir_entry; int fortune_read(char *buffer, char **start, off_t off, int count, int *eof, void *data) { struct net_device *dev ; struct ethtool_regs reg; if (off > 0) { printk(KERN_INFO "we have finished to read "); return 0; } dev=(struct net_device *)dev_get_by_name(&init_net, "eth0"); #if 1 if(dev->ethtool_ops->get_regs) { dev->ethtool_ops->get_regs(dev, ®, (void *)buffer); } #endif return count; } int fortune_write(struct file *file, const char __user *buffer, unsigned long count, void *data) { return count; } int init_fortune_module( void ) { struct file *filp = filp_open("/proc/net", O_RDONLY, 0); proc_dir_entry = PDE(filp->f_dentry->d_inode); proc_entry = create_proc_entry( "fortune", 0644, proc_dir_entry ); if (proc_entry == NULL) { printk(KERN_INFO "fortune: Couldn't create proc entry\n"); } else { proc_entry->read_proc = fortune_read; proc_entry->write_proc = fortune_write; printk(KERN_INFO "fortune: Module loaded.\n"); } return 0; } void cleanup_fortune_module( void ) { remove_proc_entry("fortune", proc_dir_entry); printk(KERN_INFO "fortune: Module unloaded.\n"); } module_init( init_fortune_module ); module_exit( cleanup_fortune_module ); -- To unsubscribe from this list: send the line "unsubscribe linux-modules" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html