X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=drivers%2Fmedia%2Fmedia-devnode.c;h=d5aa30eeff4ac56252136f967b1cd7f955c9a65e;hb=3c7f51bfad49d22ebb5c2993d715358e5df2d7c1;hp=6b87a721dc4994c956b2b70686554150dda2d268;hpb=5781cf82553ce1c91aa2173f9def10680275cddb;p=linux-2.6-block.git diff --git a/drivers/media/media-devnode.c b/drivers/media/media-devnode.c index 6b87a721dc49..d5aa30eeff4a 100644 --- a/drivers/media/media-devnode.c +++ b/drivers/media/media-devnode.c @@ -251,6 +251,7 @@ int __must_check media_devnode_register(struct media_device *mdev, /* Part 2: Initialize the character device */ cdev_init(&devnode->cdev, &media_devnode_fops); devnode->cdev.owner = owner; + kobject_set_name(&devnode->cdev.kobj, "media%d", devnode->minor); /* Part 3: Add the media and char device */ ret = cdev_device_add(&devnode->cdev, &devnode->dev); @@ -290,8 +291,9 @@ void media_devnode_unregister(struct media_devnode *devnode) mutex_lock(&media_devnode_lock); /* Delete the cdev on this minor as well */ cdev_device_del(&devnode->cdev, &devnode->dev); - mutex_unlock(&media_devnode_lock); devnode->media_dev = NULL; + mutex_unlock(&media_devnode_lock); + put_device(&devnode->dev); }