V4L/DVB (9503): v4l: remove inode argument from video_usercopy
[safe/jmp/linux-2.6] / include / media / v4l2-ioctl.h
index 7a91943..f598572 100644 (file)
@@ -284,15 +284,23 @@ int v4l_compat_translate_ioctl(struct file *file,
 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);
-extern long video_ioctl2_unlocked(struct file *file,
+/* Include support for obsoleted stuff */
+extern int video_usercopy(struct file *file, unsigned int cmd,
+                               unsigned long arg, v4l2_kioctl func);
+
+/* Standard handlers for V4L ioctl's */
+
+/* This prototype is used on fops.unlocked_ioctl */
+extern int __video_ioctl2(struct file *file,
                        unsigned int cmd, unsigned long arg);
 
-/* Include support for obsoleted stuff */
-extern int video_usercopy(struct inode *inode, struct file *file,
-                         unsigned int cmd, unsigned long arg,
-                         int (*func)(struct inode *inode, struct file *file,
-                                     unsigned int cmd, void *arg));
+/* This prototype is used on fops.ioctl
+ * Since fops.ioctl enables Kernel Big Lock, it is preferred
+ * to use __video_ioctl2 instead.
+ * It should be noticed that there's no lock code inside
+ * video_ioctl2().
+ */
+extern int video_ioctl2(struct inode *inode, struct file *file,
+                       unsigned int cmd, unsigned long arg);
 
 #endif /* _V4L2_IOCTL_H */