Mauro Carvalho Chehab wrote:
Em Qui, 2006-09-28 às 10:51 -0700, Andrew Morton escreveu:
On Thu, 28 Sep 2006 10:31:58 -0700
Martin Bligh <[email protected]> wrote:
That being said, this driver is wrong to be storing dma addresses in a
void*. And indeed there is a FIXME regarding this at
include/linux/videodev2.h:476, so I guess hiding this warning won't obscure
any fault which wasn't already known about..
Yes. The original structure is:
struct v4l2_framebuffer
{
__u32 capability;
__u32 flags;
void* base;
struct v4l2_pix_format fmt;
};
Since this is used at ioctl definition, changing this would break
userspace apps. We might replace this to something like:
struct v4l2_framebuffer
{
__u32 capability;
__u32 flags;
union {
void* base_ptr; /*FOO definition to avoid breaking userpace apps */
dma_addr_t base;
}
struct v4l2_pix_format fmt;
};
This way, base will have the expected type, and it won't break any
userspace app if sizeof(void *)<=sizeof(base). I think this is true for
all architectures (anyway, if it isn't, v4l is broken anyway).
Won't that just make the userspace apps not work properly? Not that
they do right now, but how does masking the problem help?
M.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]