]> git.karo-electronics.de Git - linux-beck.git/commit
staging: comedi: serial2002: fix different address space sparse warnings
authorH Hartley Sweeten <hsweeten@visionengravers.com>
Fri, 5 Apr 2013 23:07:49 +0000 (16:07 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 8 Apr 2013 17:27:43 +0000 (10:27 -0700)
commit32ef0e3e308f59413ba2da42717a884362bf2efc
tree6fc6d9634a7b3a7693213a4c017093091b774232
parent4445d254cdc59d535616d61f3b7b7cd573e95cf4
staging: comedi: serial2002: fix different address space sparse warnings

The struct file_operations (*read) and (*write) operations expect the
buffer to be a __user space pointer.

Currently the (*write) operations in this driver cause this warning:
warning: incorrect type in argument 2 (different address spaces)
  expected char const [noderef] <asn:1>*<noident>
  got unsigned char [usertype] *buf

And the (*read) operations cause this warning:
warning: incorrect type in argument 2 (different address spaces)
  expected char [noderef] <asn:1>*<noident>
  got unsigned char *<noident>

Use __force to cast the buffer to a __user pointer to suppress the
warnings.

Consolidate the (*read) calls into a helper function, __tty_readb().

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Cc: Ian Abbott <abbotti@mev.co.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/comedi/drivers/serial2002.c