V4L/DVB (9324): v4l2: add video_ioctl2_unlocked for unlocked_ioctl support.

Based on an older patch from Sakari Ailus.

Cc: Sakari Ailus <sakari.ailus@nokia.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
Hans Verkuil 2008-10-18 13:39:53 -03:00 committed by Mauro Carvalho Chehab
parent f496bc7166
commit d5fbf32f38
2 changed files with 12 additions and 3 deletions

View file

@ -630,8 +630,8 @@ static int __video_do_ioctl(struct inode *inode, struct file *file,
{
struct video_device *vfd = video_devdata(file);
const struct v4l2_ioctl_ops *ops = vfd->ioctl_ops;
void *fh = file->private_data;
int ret = -EINVAL;
void *fh = file->private_data;
int ret = -EINVAL;
if ((vfd->debug & V4L2_DEBUG_IOCTL) &&
!(vfd->debug & V4L2_DEBUG_IOCTL_ARG)) {
@ -1861,3 +1861,10 @@ out:
return err;
}
EXPORT_SYMBOL(video_ioctl2);
long video_ioctl2_unlocked(struct file *file,
unsigned int cmd, unsigned long arg)
{
return video_ioctl2(file->f_path.dentry->d_inode, file, cmd, arg);
}
EXPORT_SYMBOL(video_ioctl2_unlocked);

View file

@ -285,7 +285,9 @@ extern long v4l_compat_ioctl32(struct file *file, unsigned int cmd,
unsigned long arg);
extern int video_ioctl2(struct inode *inode, struct file *file,
unsigned int cmd, unsigned long arg);
unsigned int cmd, unsigned long arg);
extern long video_ioctl2_unlocked(struct file *file,
unsigned int cmd, unsigned long arg);
/* Include support for obsoleted stuff */
extern int video_usercopy(struct inode *inode, struct file *file,