Messages in this thread | | | Date | Tue, 16 Dec 2008 09:01:51 +0100 | From | "Markus Rechberger" <> | Subject | Re: [Em28xx] parameter of VIDIOC_G_INPUT and VIDIOC_S_INPUT? |
| |
Hi,
2008/12/16 Németh Márton <nm127@freemail.hu>: > Hi, > > I have a question about the parameter of VIDIOC_G_INPUT and VIDIOC_S_INPUT > parameters in v4l2 specification. > > The "Video for Linux Two API Specification" text says that the > parameter of VIDIOC_G_INPUT and VIDIOC_S_INPUT is ... > >> [...] a pointer to an integer where the driver stores the number >> of the input, as in the struct v4l2_input index field. >> >> http://v4l2spec.bytesex.org/spec/r11217.htm > > In the v4l2_input structure the index has the type of __u32. > > In contrast, in <linux/videodev2.h> (as of 2.6.27) the ioctls are defined > as follows: > >> #define VIDIOC_G_INPUT _IOR('V', 38, int) >> #define VIDIOC_S_INPUT _IOWR('V', 39, int) > > The problem is that '__u32' is unsigned and 'int' is signed. Furthermore > one cannot be sure that sizeof(__u32) == sizeof(int) on all platforms. > > I guess that the parameter of VIDIOC_G_INPUT and VIDIOC_S_INPUT should be > a pointer to __u32. What do you think? >
seems to be sane yes. This ioctl is also handled in compat_ioctl32.c and might also get some attention there.
Markus -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |