Esempio n. 1
0
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;
}
Esempio n. 2
0
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;
}