Message ID | 1377679169-9374-1-git-send-email-ricardo.ribalda@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hello, On 8/28/2013 10:39 AM, Ricardo Ribalda Delgado wrote: > struct v4_file_operations defines the data param as > const char __user *data but on vb2 is defined as > char __user *data. > > This patch fixes the warnings produced by this. ie: > > drivers/qtec/qtec_xform.c:817:2: warning: initialization from > incompatible pointer type [enabled by default] > drivers/qtec/qtec_xform.c:817:2: warning: (near initialization for > ‘qtec_xform_v4l_fops.write’) [enabled by default] > > Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Acked-by: Marek Szyprowski <m.szyprowski@samsung.com> > --- > drivers/media/v4l2-core/videobuf2-core.c | 7 ++++--- > include/media/videobuf2-core.h | 4 ++-- > 2 files changed, 6 insertions(+), 5 deletions(-) > > diff --git a/drivers/media/v4l2-core/videobuf2-core.c b/drivers/media/v4l2-core/videobuf2-core.c > index 9fc4bab..b3f86c1 100644 > --- a/drivers/media/v4l2-core/videobuf2-core.c > +++ b/drivers/media/v4l2-core/videobuf2-core.c > @@ -2438,10 +2438,11 @@ size_t vb2_read(struct vb2_queue *q, char __user *data, size_t count, > } > EXPORT_SYMBOL_GPL(vb2_read); > > -size_t vb2_write(struct vb2_queue *q, char __user *data, size_t count, > +size_t vb2_write(struct vb2_queue *q, const char __user *data, size_t count, > loff_t *ppos, int nonblocking) > { > - return __vb2_perform_fileio(q, data, count, ppos, nonblocking, 0); > + return __vb2_perform_fileio(q, (char __user *) data, count, > + ppos, nonblocking, 0); > } > EXPORT_SYMBOL_GPL(vb2_write); > > @@ -2595,7 +2596,7 @@ int vb2_fop_release(struct file *file) > } > EXPORT_SYMBOL_GPL(vb2_fop_release); > > -ssize_t vb2_fop_write(struct file *file, char __user *buf, > +ssize_t vb2_fop_write(struct file *file, const char __user *buf, > size_t count, loff_t *ppos) > { > struct video_device *vdev = video_devdata(file); > diff --git a/include/media/videobuf2-core.h b/include/media/videobuf2-core.h > index d88a098..06ec850 100644 > --- a/include/media/videobuf2-core.h > +++ b/include/media/videobuf2-core.h > @@ -388,7 +388,7 @@ unsigned long vb2_get_unmapped_area(struct vb2_queue *q, > unsigned int vb2_poll(struct vb2_queue *q, struct file *file, poll_table *wait); > size_t vb2_read(struct vb2_queue *q, char __user *data, size_t count, > loff_t *ppos, int nonblock); > -size_t vb2_write(struct vb2_queue *q, char __user *data, size_t count, > +size_t vb2_write(struct vb2_queue *q, const char __user *data, size_t count, > loff_t *ppos, int nonblock); > > /** > @@ -488,7 +488,7 @@ int vb2_ioctl_expbuf(struct file *file, void *priv, > > int vb2_fop_mmap(struct file *file, struct vm_area_struct *vma); > int vb2_fop_release(struct file *file); > -ssize_t vb2_fop_write(struct file *file, char __user *buf, > +ssize_t vb2_fop_write(struct file *file, const char __user *buf, > size_t count, loff_t *ppos); > ssize_t vb2_fop_read(struct file *file, char __user *buf, > size_t count, loff_t *ppos); Best regards
diff --git a/drivers/media/v4l2-core/videobuf2-core.c b/drivers/media/v4l2-core/videobuf2-core.c index 9fc4bab..b3f86c1 100644 --- a/drivers/media/v4l2-core/videobuf2-core.c +++ b/drivers/media/v4l2-core/videobuf2-core.c @@ -2438,10 +2438,11 @@ size_t vb2_read(struct vb2_queue *q, char __user *data, size_t count, } EXPORT_SYMBOL_GPL(vb2_read); -size_t vb2_write(struct vb2_queue *q, char __user *data, size_t count, +size_t vb2_write(struct vb2_queue *q, const char __user *data, size_t count, loff_t *ppos, int nonblocking) { - return __vb2_perform_fileio(q, data, count, ppos, nonblocking, 0); + return __vb2_perform_fileio(q, (char __user *) data, count, + ppos, nonblocking, 0); } EXPORT_SYMBOL_GPL(vb2_write); @@ -2595,7 +2596,7 @@ int vb2_fop_release(struct file *file) } EXPORT_SYMBOL_GPL(vb2_fop_release); -ssize_t vb2_fop_write(struct file *file, char __user *buf, +ssize_t vb2_fop_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos) { struct video_device *vdev = video_devdata(file); diff --git a/include/media/videobuf2-core.h b/include/media/videobuf2-core.h index d88a098..06ec850 100644 --- a/include/media/videobuf2-core.h +++ b/include/media/videobuf2-core.h @@ -388,7 +388,7 @@ unsigned long vb2_get_unmapped_area(struct vb2_queue *q, unsigned int vb2_poll(struct vb2_queue *q, struct file *file, poll_table *wait); size_t vb2_read(struct vb2_queue *q, char __user *data, size_t count, loff_t *ppos, int nonblock); -size_t vb2_write(struct vb2_queue *q, char __user *data, size_t count, +size_t vb2_write(struct vb2_queue *q, const char __user *data, size_t count, loff_t *ppos, int nonblock); /** @@ -488,7 +488,7 @@ int vb2_ioctl_expbuf(struct file *file, void *priv, int vb2_fop_mmap(struct file *file, struct vm_area_struct *vma); int vb2_fop_release(struct file *file); -ssize_t vb2_fop_write(struct file *file, char __user *buf, +ssize_t vb2_fop_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos); ssize_t vb2_fop_read(struct file *file, char __user *buf, size_t count, loff_t *ppos);
struct v4_file_operations defines the data param as const char __user *data but on vb2 is defined as char __user *data. This patch fixes the warnings produced by this. ie: drivers/qtec/qtec_xform.c:817:2: warning: initialization from incompatible pointer type [enabled by default] drivers/qtec/qtec_xform.c:817:2: warning: (near initialization for ‘qtec_xform_v4l_fops.write’) [enabled by default] Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> --- drivers/media/v4l2-core/videobuf2-core.c | 7 ++++--- include/media/videobuf2-core.h | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-)