From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Hans Verkuil <hverkuil@xs4all.nl>
Cc: linux-media@vger.kernel.org,
Mauro Carvalho Chehab <mchehab@infradead.org>,
Hans de Goede <hdegoede@redhat.com>,
Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
Pawel Osciak <pawel@osciak.com>,
Tomasz Stanislawski <t.stanislaws@samsung.com>,
Hans Verkuil <hans.verkuil@cisco.com>
Subject: Re: [RFCv2 PATCH 23/34] vb2-core: refactor reqbufs/create_bufs.
Date: Wed, 27 Jun 2012 12:49:45 +0200 [thread overview]
Message-ID: <7844932.d669S5i05h@avalon> (raw)
In-Reply-To: <201206271237.21149.hverkuil@xs4all.nl>
On Wednesday 27 June 2012 12:37:21 Hans Verkuil wrote:
> On Wed 27 June 2012 11:52:10 Laurent Pinchart wrote:
> > On Friday 22 June 2012 14:21:17 Hans Verkuil wrote:
> > > From: Hans Verkuil <hans.verkuil@cisco.com>
> > >
> > > Split off the memory and type validation. This is done both from reqbufs
> > > and create_bufs, and will also be done by vb2 helpers in a later patch.
> > >
> > > Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
[snip]
> > > +
> > > +/**
> > > + * vb2_reqbufs() - Wrapper for __reqbufs() that also verifies the
> > > memory and
> > > + * type values.
> > > + * @q: videobuf2 queue
> > > + * @create: creation parameters, passed from userspace to
> > > vidioc_create_bufs
> > > + * handler in driver
> > > + */
> > > +int vb2_create_bufs(struct vb2_queue *q, struct v4l2_create_buffers
> > > *create)
> > > +{
> > > + int ret = __verify_memory_type(q, create->memory,
> > > create->format.type);
> > > +
> > > + create->index = q->num_buffers;
> >
> > I think this changes the behaviour of create_bufs, it should thus belong
> > to the next patch.
>
> No, I don't think this changes the behavior as far as I can tell.
Without your patch create->index isn't modified if the checks fail. On the
other hand, I've just remembered that video_usercopy won't copy the structure
back to userspace if ret < 0, so you should be right.
> > > + return ret ? ret : __create_bufs(q, create);
> > > +}
> > >
> > > EXPORT_SYMBOL_GPL(vb2_create_bufs);
> > >
> > > /**
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2012-06-27 10:49 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-22 12:20 [RFCv2 PATCH 00/34] Core and vb2 enhancements Hans Verkuil
2012-06-22 12:20 ` [RFCv2 PATCH 01/34] Regression fixes Hans Verkuil
2012-06-22 12:20 ` [RFCv2 PATCH 02/34] v4l2-ioctl.c: move a block of code down, no other changes Hans Verkuil
2012-06-22 12:20 ` [RFCv2 PATCH 03/34] v4l2-ioctl.c: introduce INFO_FL_CLEAR to replace switch Hans Verkuil
2012-06-22 12:20 ` [RFCv2 PATCH 04/34] v4l2-ioctl.c: v4l2-ioctl: add debug and callback/offset functionality Hans Verkuil
2012-06-22 12:20 ` [RFCv2 PATCH 05/34] v4l2-ioctl.c: remove an unnecessary #ifdef Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 06/34] v4l2-ioctl.c: use the new table for querycap and i/o ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 07/34] v4l2-ioctl.c: use the new table for priority ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 08/34] v4l2-ioctl.c: use the new table for format/framebuffer ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 09/34] v4l2-ioctl.c: use the new table for overlay/streamon/off ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 10/34] v4l2-ioctl.c: use the new table for std/tuner/modulator ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 11/34] v4l2-ioctl.c: use the new table for queuing/parm ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 12/34] v4l2-ioctl.c: use the new table for control ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 13/34] v4l2-ioctl.c: use the new table for selection ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 14/34] v4l2-ioctl.c: use the new table for compression ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 15/34] v4l2-ioctl.c: use the new table for debug ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 16/34] v4l2-ioctl.c: use the new table for preset/timings ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 17/34] v4l2-ioctl.c: use the new table for the remaining ioctls Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 18/34] v4l2-ioctl.c: finalize table conversion Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 19/34] v4l2-dev.c: add debug sysfs entry Hans Verkuil
2012-06-27 9:54 ` Laurent Pinchart
2012-06-27 10:38 ` Hans Verkuil
2012-06-27 10:52 ` Laurent Pinchart
2012-06-22 12:21 ` [RFCv2 PATCH 20/34] v4l2-ioctl: remove v4l_(i2c_)print_ioctl Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 21/34] ivtv: don't mess with vfd->debug Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 22/34] cx18: " Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 23/34] vb2-core: refactor reqbufs/create_bufs Hans Verkuil
2012-06-27 9:52 ` Laurent Pinchart
2012-06-27 10:37 ` Hans Verkuil
2012-06-27 10:49 ` Laurent Pinchart [this message]
2012-06-22 12:21 ` [RFCv2 PATCH 24/34] vb2-core: add support for count == 0 in create_bufs Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 25/34] Spec: document CREATE_BUFS behavior if count == 0 Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 26/34] v4l2-dev/ioctl.c: add vb2_queue support to video_device Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 27/34] videobuf2-core: add helper functions Hans Verkuil
2012-06-27 9:42 ` Laurent Pinchart
2012-06-27 10:31 ` Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 28/34] vivi: remove pointless g/s_std support Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 29/34] vivi: embed struct video_device instead of allocating it Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 30/34] vivi: use vb2 helper functions Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 31/34] vivi: add create_bufs/preparebuf support Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 32/34] v4l2-dev.c: also add debug support for the fops Hans Verkuil
2012-06-27 9:59 ` Laurent Pinchart
2012-06-27 10:44 ` Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 33/34] pwc: use the new vb2 helpers Hans Verkuil
2012-06-22 12:21 ` [RFCv2 PATCH 34/34] pwc: v4l2-compliance fixes Hans Verkuil
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7844932.d669S5i05h@avalon \
--to=laurent.pinchart@ideasonboard.com \
--cc=g.liakhovetski@gmx.de \
--cc=hans.verkuil@cisco.com \
--cc=hdegoede@redhat.com \
--cc=hverkuil@xs4all.nl \
--cc=linux-media@vger.kernel.org \
--cc=mchehab@infradead.org \
--cc=pawel@osciak.com \
--cc=t.stanislaws@samsung.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox