Hi, I have question about V4L2_MEMORY_USERPTR on 64bit applications. struct v4l2_buffer { __u32 index; __u32 type; __u32 bytesused; __u32 flags; __u32 field; struct timeval timestamp; struct v4l2_timecode timecode; __u32 sequence; /* memory location */ __u32 memory; union { __u32 offset; unsigned long userptr; <<<--- this is a 32bit addr. struct v4l2_plane *planes; __s32 fd; } m; __u32 length; __u32 reserved2; __u32 reserved; }; when use a 64bit application, memory from malloc is 64bit address. memory from GPU (eg, intel i915) are also 64bit address. when use these kind of memory as V4L2_MEMORY_USERPTR, address will be truncated into 32bit. this would be error, but actually not. I really don't understand. BR. Ning.