mirror of
https://github.com/torvalds/linux.git
synced 2026-05-31 18:43:33 +02:00
media: camss: Replace .open() file operation with v4l2_fh_open()
The custom video_open() function in the camss driver open-codes the v4l2_fh_open() helper, with an additional mutex that protects the whole function. Given that the function does not modify any data guarded by the lock, there's no need for using the mutex and the function can be replaced by v4l2_fh_open(). Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
This commit is contained in:
parent
ff9c50a4a9
commit
caa5c3439a
|
|
@ -604,36 +604,6 @@ static const struct v4l2_ioctl_ops msm_vid_ioctl_ops = {
|
|||
* V4L2 file operations
|
||||
*/
|
||||
|
||||
static int video_open(struct file *file)
|
||||
{
|
||||
struct video_device *vdev = video_devdata(file);
|
||||
struct camss_video *video = video_drvdata(file);
|
||||
struct v4l2_fh *vfh;
|
||||
int ret;
|
||||
|
||||
mutex_lock(&video->lock);
|
||||
|
||||
vfh = kzalloc(sizeof(*vfh), GFP_KERNEL);
|
||||
if (vfh == NULL) {
|
||||
ret = -ENOMEM;
|
||||
goto error_alloc;
|
||||
}
|
||||
|
||||
v4l2_fh_init(vfh, vdev);
|
||||
v4l2_fh_add(vfh);
|
||||
|
||||
file->private_data = vfh;
|
||||
|
||||
mutex_unlock(&video->lock);
|
||||
|
||||
return 0;
|
||||
|
||||
error_alloc:
|
||||
mutex_unlock(&video->lock);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int video_release(struct file *file)
|
||||
{
|
||||
vb2_fop_release(file);
|
||||
|
|
@ -646,7 +616,7 @@ static int video_release(struct file *file)
|
|||
static const struct v4l2_file_operations msm_vid_fops = {
|
||||
.owner = THIS_MODULE,
|
||||
.unlocked_ioctl = video_ioctl2,
|
||||
.open = video_open,
|
||||
.open = v4l2_fh_open,
|
||||
.release = video_release,
|
||||
.poll = vb2_fop_poll,
|
||||
.mmap = vb2_fop_mmap,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user