aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/ivtv/ivtv-ioctl.c
diff options
context:
space:
mode:
authorHans Verkuil <hverkuil@xs4all.nl>2008-10-18 12:42:24 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-10-21 12:31:28 -0400
commit09882f0044b7cf6e506c82a5182ad768ebb660f2 (patch)
tree208d75bd3fa03ba4d950eb5f67d1d31d42903852 /drivers/media/video/ivtv/ivtv-ioctl.c
parentd5fbf32f381ad841d9d9537aa1b6f74796703361 (diff)
V4L/DVB (9325): ivtv: switch to unlocked_ioctl.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/ivtv/ivtv-ioctl.c')
-rw-r--r--drivers/media/video/ivtv/ivtv-ioctl.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/drivers/media/video/ivtv/ivtv-ioctl.c b/drivers/media/video/ivtv/ivtv-ioctl.c
index 208fb54842f2..09a75abcb478 100644
--- a/drivers/media/video/ivtv/ivtv-ioctl.c
+++ b/drivers/media/video/ivtv/ivtv-ioctl.c
@@ -1756,12 +1756,12 @@ static int ivtv_default(struct file *file, void *fh, int cmd, void *arg)
1756 return 0; 1756 return 0;
1757} 1757}
1758 1758
1759static int ivtv_serialized_ioctl(struct ivtv *itv, struct inode *inode, struct file *filp, 1759static long ivtv_serialized_ioctl(struct ivtv *itv, struct file *filp,
1760 unsigned int cmd, unsigned long arg) 1760 unsigned int cmd, unsigned long arg)
1761{ 1761{
1762 struct video_device *vfd = video_devdata(filp); 1762 struct video_device *vfd = video_devdata(filp);
1763 struct ivtv_open_id *id = (struct ivtv_open_id *)filp->private_data; 1763 struct ivtv_open_id *id = (struct ivtv_open_id *)filp->private_data;
1764 int ret; 1764 long ret;
1765 1765
1766 /* Filter dvb ioctls that cannot be handled by the v4l ioctl framework */ 1766 /* Filter dvb ioctls that cannot be handled by the v4l ioctl framework */
1767 switch (cmd) { 1767 switch (cmd) {
@@ -1830,20 +1830,19 @@ static int ivtv_serialized_ioctl(struct ivtv *itv, struct inode *inode, struct f
1830 1830
1831 if (ivtv_debug & IVTV_DBGFLG_IOCTL) 1831 if (ivtv_debug & IVTV_DBGFLG_IOCTL)
1832 vfd->debug = V4L2_DEBUG_IOCTL | V4L2_DEBUG_IOCTL_ARG; 1832 vfd->debug = V4L2_DEBUG_IOCTL | V4L2_DEBUG_IOCTL_ARG;
1833 ret = video_ioctl2(inode, filp, cmd, arg); 1833 ret = video_ioctl2_unlocked(filp, cmd, arg);
1834 vfd->debug = 0; 1834 vfd->debug = 0;
1835 return ret; 1835 return ret;
1836} 1836}
1837 1837
1838int ivtv_v4l2_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, 1838long ivtv_v4l2_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
1839 unsigned long arg)
1840{ 1839{
1841 struct ivtv_open_id *id = (struct ivtv_open_id *)filp->private_data; 1840 struct ivtv_open_id *id = (struct ivtv_open_id *)filp->private_data;
1842 struct ivtv *itv = id->itv; 1841 struct ivtv *itv = id->itv;
1843 int res; 1842 long res;
1844 1843
1845 mutex_lock(&itv->serialize_lock); 1844 mutex_lock(&itv->serialize_lock);
1846 res = ivtv_serialized_ioctl(itv, inode, filp, cmd, arg); 1845 res = ivtv_serialized_ioctl(itv, filp, cmd, arg);
1847 mutex_unlock(&itv->serialize_lock); 1846 mutex_unlock(&itv->serialize_lock);
1848 return res; 1847 return res;
1849} 1848}