aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/videodev.c
diff options
context:
space:
mode:
authorTrent Piepho <xyzzy@speakeasy.org>2006-07-29 17:18:06 -0300
committerMauro Carvalho Chehab <mchehab@infradead.org>2006-07-29 17:22:36 -0300
commitd94fc9a08e51432d0d5fc0f74a4f705d7b49c251 (patch)
treecfef5643b6657bb775f6ab1e889e9a3d89bece28 /drivers/media/video/videodev.c
parentV4L/DVB (4367): Videodev: Handle class_device related errors (diff)
downloadlinux-dev-d94fc9a08e51432d0d5fc0f74a4f705d7b49c251.tar.xz
linux-dev-d94fc9a08e51432d0d5fc0f74a4f705d7b49c251.zip
V4L/DVB (4368): Bttv: use class_device_create_file and handle errors
Revert bttv-driver.c from video_device_create_file() to use class_device_create_file() again. video_device_create_file() is only available when V4L1 is on. Proper error checking is added for failure of class_device_create_file(). Will print error message and unroll partially created sysfs entries. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/video/videodev.c')
-rw-r--r--drivers/media/video/videodev.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/media/video/videodev.c b/drivers/media/video/videodev.c
index caa4f736468a..46848e2ae476 100644
--- a/drivers/media/video/videodev.c
+++ b/drivers/media/video/videodev.c
@@ -1578,12 +1578,13 @@ int video_register_device(struct video_device *vfd, int type, int nr)
if (ret) {
printk(KERN_ERR "%s: class_device_register failed\n",
__FUNCTION__);
- return ret;
+ goto fail_minor;
}
ret = class_device_create_file(&vfd->class_dev, &class_device_attr_name);
if (ret < 0) {
- printk(KERN_WARNING "%s error: %d\n", __FUNCTION__, ret);
- return ret;
+ printk(KERN_ERR "%s: class_device_create_file 'name' failed\n",
+ __FUNCTION__);
+ goto fail_classdev;
}
#if 1