diff options
Diffstat (limited to 'src/kernel/core.c')
-rw-r--r-- | src/kernel/core.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/kernel/core.c b/src/kernel/core.c index 0e81fdd..086a764 100644 --- a/src/kernel/core.c +++ b/src/kernel/core.c @@ -27,12 +27,14 @@ dnbd3_device_t dnbd3_device[MAX_NUMBER_DEVICES]; static int __init dnbd3_init(void) { int i; + // initialize block device if ((major = register_blkdev(0, "dnbd3")) == 0) { printk("ERROR: dnbd3 register_blkdev failed.\n"); return -EIO; } + // add MAX_NUMBER_DEVICES devices for (i = 0; i < MAX_NUMBER_DEVICES; i++) { @@ -42,6 +44,7 @@ static int __init dnbd3_init(void) return -EIO; } } + printk("INFO: dnbd3 init successful.\n"); return 0; } @@ -49,10 +52,12 @@ static int __init dnbd3_init(void) static void __exit dnbd3_exit(void) { int i; + for (i = 0; i < MAX_NUMBER_DEVICES; i++) { dnbd3_blk_del_device(&dnbd3_device[i]); } + unregister_blkdev(major, "dnbd3"); printk("INFO: dnbd3 exit.\n"); } |