提交 2e71c9e4 编写于 作者: S Sudip Mukherjee 提交者: Greg Kroah-Hartman

staging: unisys: use error codes

we were just returning -1 to the calling function which was again
returning that if the module failed to load. Now we are returning the
actual error codes.
Signed-off-by: NSudip Mukherjee <sudip@vectorindia.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 6bdb6101
......@@ -56,18 +56,20 @@ visorchipset_file_init(dev_t major_dev, struct visorchannel **controlvm_channel)
cdev_init(&file_cdev, &visorchipset_fops);
file_cdev.owner = THIS_MODULE;
if (MAJOR(major_dev) == 0) {
rc = alloc_chrdev_region(&major_dev, 0, 1, MYDRVNAME);
/* dynamic major device number registration required */
if (alloc_chrdev_region(&major_dev, 0, 1, MYDRVNAME) < 0)
return -1;
if (rc < 0)
return rc;
} else {
/* static major device number registration required */
if (register_chrdev_region(major_dev, 1, MYDRVNAME) < 0)
return -1;
rc = register_chrdev_region(major_dev, 1, MYDRVNAME);
if (rc < 0)
return rc;
}
rc = cdev_add(&file_cdev, MKDEV(MAJOR(major_dev), 0), 1);
if (rc < 0) {
unregister_chrdev_region(major_dev, 1);
return -1;
return rc;
}
return 0;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册