Thread (13 messages) flat view 13 messages, 5 authors, 2011-11-09

Re: [PATCH 2/5] net/sunrpc: use kstrtoul, etc

From: Alexey Dobriyan <hidden>
Date: 2011-11-08 20:46:05
Also in: kernel-janitors, linux-nfs, lkml

On Tue, Nov 08, 2011 at 09:19:30PM +0100, Julia Lawall wrote:

On Tue, 8 Nov 2011, Alexey Dobriyan wrote:
quoted
On Sun, Nov 06, 2011 at 02:26:47PM +0100, Julia Lawall wrote:
quoted
@@
expression a,b;
{int,long} *c;
@@

-strict_strtoul
+kstrtoul
No, no, no!
Sorry, this was not the real rule I used for the strtoul case.  Instead I 
used the following:

@@
typedef ulong;
expression a,b;
{ulong,unsigned long,unsigned int,size_t} *c;
@@

-strict_strtoul
+kstrtoul
  (a,b,c)

But now I have seen that there is a separate function for integers, so I 
have made a rule to use that function when the type is unsigned int.
quoted
In every case see the type or real data and use appropriate function.
kstrtou8() for ports.
The type of the destination variable in all of these cases is unsigned 
long.  But maybe that is not enough information to make the 
transformation in the right way.
That's because previous functions following libc didn't accept anything
less than unsigned long.

For these conversion, one should literally look at every usecase and
see what types data have for real (not unsigned long) and
make conversion and remove explicit EINVAL checks if necesasry.

In sunrpc case: switch to kstrtou8 + remove "> 255" check.

This program doesn't and won't do that.
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help