]> git.baikalelectronics.ru Git - kernel.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)
commit4dc22addfc758c158d3faf24569ee0c95509cac6
tree6fc6d9634a7b3a7693213a4c017093091b774232
parent122110c347bd13cf5c7a5de52e0523f797bfbb9a
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