Thread (10 messages) flat view 10 messages, 4 authors, 2016-03-18

Re: [PATCH v9 2/3] kernel.h: add to_user_ptr()

From: Daniel Vetter <hidden>
Date: 2016-03-18 08:23:19
Also in: dri-devel, lkml

On Thu, Mar 17, 2016 at 02:33:50PM -0700, Joe Perches wrote:
On Thu, 2016-03-17 at 18:19 -0300, Gustavo Padovan wrote:
quoted
2016-03-17 Joe Perches [off-list ref]:
quoted
On Thu, 2016-03-17 at 16:50 -0400, Rob Clark wrote:
quoted
On Thu, Mar 17, 2016 at 4:40 PM, Joe Perches [off-list ref] wrote:
[]
quoted
quoted
It's a name that seems like it should be a straightforward
cast of a kernel pointer to a __user pointer like:

static inline void __user *to_user_ptr(void *p)
{
        return (void __user *)p;
}
ahh, ok.  I guess I was used to using it in the context of ioctl
structs..  in that context u64 -> (void __user *) made more sense.

Maybe uapi_to_ptr()?  (ok, not super-creative.. maybe someone has a
better idea)
Maybe u64_to_user_ptr?
That is a good name. If everyone agrees I can resend this patch
changing it to u64_to_user_ptr. Then should we still keep it on
kernel.h?
I've no particular opinion about location,
but maybe compat.h might be appropriate.

Maybe add all variants:

	void __user *u32_to_user_ptr(u32 val)
	void __user *u64_to_user_ptr(u64 val)
	u32 user_ptr_to_u32(void __user *p)
	u64 user_ptr_to_u64(void __user *p)

Maybe there's something about 32 bit userspace on
64 OS that should be done too.
Tbh I really don't think we should add 32bit variants and encourage the
mispractice of having 32bit user ptrs in ioctl structs and stuff. Anyway,
just my bikeshed on top ;-)
-Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help