int memory_init(void) { int result; result = register_chrdev(memory_major, "memory", &memory_fops); if(result < 0) { printk("<1>memory: cannot obtain major number %d\n", memory_major); return result; } memory_buffer = kmalloc(1, GFP_KERNEL); if(!memory_buffer) { result = -ENOMEM; goto fail; } memset(memory_buffer, 0, 1); printk("<1>Inserting memory module\n"); return 0; fail: memory_exit(); return result; }
int memory_init(void){ int result; /*result = register_chrdev(memory_major, module_name, &memory_fops);*/ /*if(result < 0){*/ /*printk(KERN_INFO "Memory module cannot obtain major number %d.\n", memory_major);*/ /*return result;*/ /*}*/ result = misc_register(&memory_dev); if(result < 0){ printk(KERN_INFO "Memory module cannot register device.\n"); return result; } memory_buffer = kmalloc(1, GFP_KERNEL); if(!memory_buffer){ result = -ENOMEM; goto fail; } memset(memory_buffer, 0, 1); printk(KERN_INFO "Loaded memory module.\n"); return 0; fail: memory_exit(); return result; }