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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.