From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
To: Sakari Ailus <sakari.ailus@iki.fi>
Cc: "linux-media@vger.kernel.org" <linux-media@vger.kernel.org>
Subject: Re: [GIT PULL FOR 3.6] V4L2 API cleanups
Date: Sun, 17 Jun 2012 00:03:06 +0200 [thread overview]
Message-ID: <5239489.ghNmaKI2zP@avalon> (raw)
In-Reply-To: <20120611093944.GF12505@valkosipuli.retiisi.org.uk>
Hi Sakari,
On Monday 11 June 2012 12:39:44 Sakari Ailus wrote:
> On Mon, Jun 11, 2012 at 09:50:54AM +0200, Laurent Pinchart wrote:
> > On Sunday 10 June 2012 23:22:59 Sakari Ailus wrote:
> > > Hi Mauro,
> > >
> > > Here are two V4L2 API cleanup patches; the first removes __user from
> > > videodev2.h from a few places, making it possible to use the header file
> > > as such in user space, while the second one changes the
> > > v4l2_buffer.input field back to reserved.
> > >
> > > The following changes since commit
5472d3f17845c4398c6a510b46855820920c2181:
> > > [media] mt9m032: Implement V4L2_CID_PIXEL_RATE control (2012-05-24
> > >
> > > 09:27:24 -0300)
> > >
> > > are available in the git repository at:
> > > ssh://linuxtv.org/git/sailus/media_tree.git media-for-3.6
> > >
> > > Sakari Ailus (2):
> > > v4l: Remove __user from interface structure definitions
> >
> > NAK, sorry.
> >
> > __user has a purpose, we need to add it where it's missing, not remove it
> > where it's rightfully present.
>
> It's not quite as simple as adding __user everywhere it might belong to ---
> these structs are being used in kernel space, too. The structs that are part
> of the user space interface may at some point contain pointers to memory
> which is in user space. That is being dealt by video_usercopy(), so the
> individual drivers or the rest of the V4L2 framework always gets pointers
> pointing to kernel memory.
Very good point, I haven't thought about that. I'm not sure how to deal with
this, splitting structures in a __user and a non __user version isn't really a
good option. Maybe the sparse tool should be somehow extended ?
> These particular fields aren't handled by the framework currently, so
> removing __user there requires adding the support to video_usercopy().
--
Regards,
Laurent Pinchart
next prev parent reply other threads:[~2012-06-16 22:02 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-10 20:22 [GIT PULL FOR 3.6] V4L2 API cleanups Sakari Ailus
2012-06-11 7:50 ` Laurent Pinchart
2012-06-11 9:39 ` Sakari Ailus
2012-06-16 22:03 ` Laurent Pinchart [this message]
2012-06-17 7:54 ` Sakari Ailus
2012-06-18 10:53 ` Laurent Pinchart
2012-07-05 20:46 ` Mauro Carvalho Chehab
2012-07-06 8:51 ` Laurent Pinchart
2012-07-05 20:55 ` Mauro Carvalho Chehab
2012-07-05 21:21 ` Sakari Ailus
2012-07-05 21:31 ` Ezequiel Garcia
2012-07-05 22:27 ` Mauro Carvalho Chehab
2012-07-05 21:41 ` Mauro Carvalho Chehab
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=5239489.ghNmaKI2zP@avalon \
--to=laurent.pinchart@ideasonboard.com \
--cc=linux-media@vger.kernel.org \
--cc=sakari.ailus@iki.fi \
/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