[PATCH] mtd: Fix warning in access_ok() parameter passing

Brian Norris computersforpeace at gmail.com
Mon May 12 16:16:04 PDT 2014


On Thu, May 01, 2014 at 08:40:54PM +0200, Geert Uytterhoeven wrote:
> On m68k, where access_ok() doesn't cast the address parameter:
> 
> drivers/mtd/mtdchar.c: In function 'mtdchar_write_ioctl':
> drivers/mtd/mtdchar.c:575:4: warning: passing argument 2 of 'access_ok' makes pointer from integer without a cast [enabled by default]
> arch/m68k/include/asm/uaccess_mm.h:17:90: note: expected 'const void *' but argument is of type '__u64'
> drivers/mtd/mtdchar.c:576:4: warning: passing argument 2 of 'access_ok' makes pointer from integer without a cast [enabled by default]
> arch/m68k/include/asm/uaccess_mm.h:17:90: note: expected 'const void *' but argument is of type '__u64'
> 
> The address parameter of access_ok() is really a userspace pointer.
> On most architectures, access_ok() is a macro that casts the address
> parameter, hiding issues in its users.
> 
> Move around and use the existing usr_data and usr_oob temporary variables
> to kill the warnings. Add a few "consts", and make more use of the
> temporaries while we're at it.
> 
> Signed-off-by: Geert Uytterhoeven <geert at linux-m68k.org>

Pushed to l2-mtd.git. Thanks!

Brian



More information about the linux-mtd mailing list