Messages in this thread | | | From | Arnd Bergmann <> | Subject | Re: [RFC PATCH v1 5/7] media: v4l2: introduce two IOCTLs for face detection | Date | Tue, 6 Dec 2011 12:55:55 +0000 |
| |
On Tuesday 06 December 2011, Ming Lei wrote: > diff --git a/include/linux/videodev2.h b/include/linux/videodev2.h > index 073eb4d..8aeaa1e 100644 > --- a/include/linux/videodev2.h > +++ b/include/linux/videodev2.h > @@ -2214,7 +2214,12 @@ struct v4l2_fd_result { > __u32 buf_index; > __u32 face_cnt; > __u32 reserved[6]; > - struct v4l2_fd_detection *fd; > + > + /*make 64/32 compatible*/ > + union { > + struct v4l2_fd_detection *fd; > + __u64 dummy; > + }; > }; >
That's not compatible, at least not on any big-endian architecture. If you want to have an indirect pointer, you have to cast it to the __u64 member in user space and back in kernel space.
Using an array added to the end of the v4l2_fd_result structure rather than a pointer would really make this easier IMHO.
Arnd
| |