lkml.org 
[lkml]   [2014]   [Dec]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH repost 12/16] parisc/uaccess: fix sparse errors
From
Date
On Wed, 2014-12-31 at 20:38 +0200, Michael S. Tsirkin wrote:
> On Wed, Dec 31, 2014 at 09:17:20AM -0800, James Bottomley wrote:
[...]
> > OK, parisc developers still being dense, but this does look like an
> > abuse of the bitwise type.
>
> To give you another example:
>
> __le16 __user *p;
> __le16 foo;
> int rc = get_user(v, p);
>
> really should be fine, ATM this gives a warning.

OK, I think I've figured it out. You're saying that casting __gu_val to
a bitwise annotated type is an automatic sparse failure because it has
to be a long in our assembly code to receive the load/store as a
register. However, this is required for sparse to do the correct lvalue
type = rvalue type check in the assignment to x. We were all thinking
the __force just killed these sparse type checks.

In that case, I think parisc is fine with this.

James




\
 
 \ /
  Last update: 2014-12-31 21:41    [W:0.084 / U:0.232 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site