Эх сурвалжийг харах

V4L/DVB (8629): v4l2-ioctl: do not try to handle private V4L1 ioctls

Some drivers (e.g. zoran) have private V4L1 ioctls. Do not try to
pass them to v4l1_compat_translate because then the driver will
never see them.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Hans Verkuil 17 жил өмнө
parent
commit
888fe747b5

+ 1 - 1
drivers/media/video/v4l2-ioctl.c

@@ -674,7 +674,7 @@ static int __video_do_ioctl(struct inode *inode, struct file *file,
 	 __video_do_ioctl will be called again, with one or more
 	 __video_do_ioctl will be called again, with one or more
 	 V4L2 ioctls.
 	 V4L2 ioctls.
 	 ********************************************************/
 	 ********************************************************/
-	if (_IOC_TYPE(cmd) == 'v')
+	if (_IOC_TYPE(cmd) == 'v' && _IOC_NR(cmd) < BASE_VIDIOCPRIVATE)
 		return v4l_compat_translate_ioctl(inode, file, cmd, arg,
 		return v4l_compat_translate_ioctl(inode, file, cmd, arg,
 						__video_do_ioctl);
 						__video_do_ioctl);
 #endif
 #endif