[kas:lam 6/10] drivers/scsi/scsi_ioctl.c:49:21: sparse: sparse: incorrect type in argument 1 (different address spaces)

From: kernel test robot
Date: Thu Apr 07 2022 - 10:37:20 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git lam
head: 73447e771c55e18598a6fbf6adee1002aee18ea0
commit: 92948bd2c12648f2fb8256ae69dd092ce4398a3a [6/10] x86/uaccess: Remove tags from the address before checking
config: x86_64-randconfig-s021 (https://download.01.org/0day-ci/archive/20220407/202204072240.us5nOO6H-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.2.0-19) 11.2.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git/commit/?id=92948bd2c12648f2fb8256ae69dd092ce4398a3a
git remote add kas https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git
git fetch --no-tags kas lam
git checkout 92948bd2c12648f2fb8256ae69dd092ce4398a3a
# save the config file to linux build tree
mkdir build_dir
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kernel/cpu/mce/ block/ drivers/acpi/ drivers/android/ drivers/ata/ drivers/block/ drivers/comedi/ drivers/fpga/ drivers/infiniband/core/ drivers/nvme/host/ drivers/platform/x86/ drivers/scsi/ drivers/usb/gadget/function/ drivers/vdpa/vdpa_user/ drivers/vhost/ fs/cifs/ fs/ext2/ fs/ext4/ fs/f2fs/ fs/jfs/ fs/reiserfs/ fs/xfs/ kernel/ net/bluetooth/ net/core/ net/decnet/ net/ipv4/ net/l2tp/ net/llc/ net/nfc/ net/sctp/ net/smc/ net/tipc/ net/tls/ sound/core/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>


sparse warnings: (new ones prefixed by >>)
>> drivers/scsi/scsi_ioctl.c:49:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:49:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:49:21: sparse: got unsigned int *__ptr_clean
>> drivers/scsi/scsi_ioctl.c:173:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:173:16: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:173:16: sparse: got int *__ptr_clean
>> drivers/scsi/scsi_ioctl.c:173:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:173:16: sparse: expected void [noderef] __user *__ptr_pu
drivers/scsi/scsi_ioctl.c:173:16: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:178:28: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:178:28: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:178:28: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:191:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:191:16: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:191:16: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:191:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:191:16: sparse: expected void [noderef] __user *__ptr_pu
drivers/scsi/scsi_ioctl.c:191:16: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:196:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:196:25: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:196:25: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:215:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:215:16: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:215:16: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:215:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:215:16: sparse: expected void [noderef] __user *__ptr_pu
drivers/scsi/scsi_ioctl.c:215:16: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:532:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:532:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:532:13: sparse: got unsigned int *__ptr_clean
drivers/scsi/scsi_ioctl.c:534:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:534:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:534:13: sparse: got unsigned int *__ptr_clean
>> drivers/scsi/scsi_ioctl.c:538:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned char *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:538:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:538:13: sparse: got unsigned char *__ptr_clean
drivers/scsi/scsi_ioctl.c:924:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:924:24: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_ioctl.c:924:24: sparse: got int *__ptr_clean
drivers/scsi/scsi_ioctl.c:924:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
drivers/scsi/scsi_ioctl.c:924:24: sparse: expected void [noderef] __user *__ptr_pu
drivers/scsi/scsi_ioctl.c:924:24: sparse: got int *__ptr_clean
--
>> drivers/scsi/scsi_error.c:2388:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/scsi/scsi_error.c:2388:17: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/scsi_error.c:2388:17: sparse: got int *__ptr_clean
--
>> drivers/scsi/ch.c:552:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned char *__ptr_clean @@
drivers/scsi/ch.c:552:17: sparse: expected void const volatile [noderef] __user *ptr
drivers/scsi/ch.c:552:17: sparse: got unsigned char *__ptr_clean
>> drivers/scsi/ch.c:552:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned char *__ptr_clean @@
drivers/scsi/ch.c:552:17: sparse: expected void [noderef] __user *__ptr_pu
drivers/scsi/ch.c:552:17: sparse: got unsigned char *__ptr_clean
--
drivers/scsi/st.c: note: in included file:
>> include/linux/mtio.h:55:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
include/linux/mtio.h:55:24: sparse: expected void const volatile [noderef] __user *ptr
include/linux/mtio.h:55:24: sparse: got unsigned int *__ptr_clean
>> include/linux/mtio.h:55:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
include/linux/mtio.h:55:24: sparse: expected void [noderef] __user *__ptr_pu
include/linux/mtio.h:55:24: sparse: got unsigned int *__ptr_clean
>> include/linux/mtio.h:57:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got long *__ptr_clean @@
include/linux/mtio.h:57:24: sparse: expected void const volatile [noderef] __user *ptr
include/linux/mtio.h:57:24: sparse: got long *__ptr_clean
>> include/linux/mtio.h:57:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got long *__ptr_clean @@
include/linux/mtio.h:57:24: sparse: expected void [noderef] __user *__ptr_pu
include/linux/mtio.h:57:24: sparse: got long *__ptr_clean
--
>> drivers/usb/gadget/function/rndis.c:1138:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
drivers/usb/gadget/function/rndis.c:1138:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/usb/gadget/function/rndis.c:1138:21: sparse: got char const *__ptr_clean
--
>> drivers/vdpa/vdpa_user/vduse_dev.c:975:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/vdpa/vdpa_user/vduse_dev.c:975:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/vdpa/vdpa_user/vduse_dev.c:975:23: sparse: got unsigned long long *__ptr_clean
>> drivers/vdpa/vdpa_user/vduse_dev.c:975:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
drivers/vdpa/vdpa_user/vduse_dev.c:975:23: sparse: expected void [noderef] __user *__ptr_pu
drivers/vdpa/vdpa_user/vduse_dev.c:975:23: sparse: got unsigned long long *__ptr_clean
>> drivers/vdpa/vdpa_user/vduse_dev.c:1080:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/vdpa/vdpa_user/vduse_dev.c:1080:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/vdpa/vdpa_user/vduse_dev.c:1080:21: sparse: got unsigned int *__ptr_clean
drivers/vdpa/vdpa_user/vduse_dev.c:1381:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/vdpa/vdpa_user/vduse_dev.c:1381:23: sparse: expected void const volatile [noderef] __user *ptr
drivers/vdpa/vdpa_user/vduse_dev.c:1381:23: sparse: got unsigned long long *__ptr_clean
drivers/vdpa/vdpa_user/vduse_dev.c:1381:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
drivers/vdpa/vdpa_user/vduse_dev.c:1381:23: sparse: expected void [noderef] __user *__ptr_pu
drivers/vdpa/vdpa_user/vduse_dev.c:1381:23: sparse: got unsigned long long *__ptr_clean
drivers/vdpa/vdpa_user/vduse_dev.c:1387:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/vdpa/vdpa_user/vduse_dev.c:1387:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/vdpa/vdpa_user/vduse_dev.c:1387:21: sparse: got unsigned long long *__ptr_clean
--
>> drivers/vhost/scsi.c:1872:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/vhost/scsi.c:1872:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/vhost/scsi.c:1872:21: sparse: got unsigned int *__ptr_clean
drivers/vhost/scsi.c:1882:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/vhost/scsi.c:1882:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/vhost/scsi.c:1882:21: sparse: got unsigned int *__ptr_clean
>> drivers/vhost/scsi.c:1882:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/vhost/scsi.c:1882:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/vhost/scsi.c:1882:21: sparse: got unsigned int *__ptr_clean
--
>> drivers/vhost/vhost.c:1602:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/vhost/vhost.c:1602:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/vhost/vhost.c:1602:13: sparse: got unsigned int *__ptr_clean
>> drivers/vhost/vhost.c:1800:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/vhost/vhost.c:1800:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/vhost/vhost.c:1800:21: sparse: got int *__ptr_clean
--
drivers/infiniband/core/user_mad.c: note: in included file (through include/trace/trace_events.h, include/trace/define_trace.h, include/trace/events/ib_umad.h):
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be32
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be32
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be16
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be32
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be16
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be16
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be64
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be16
include/trace/events/ib_umad.h:16:1: sparse: sparse: cast to restricted __be32
drivers/infiniband/core/user_mad.c: note: in included file (through include/trace/trace_events.h, include/trace/define_trace.h, include/trace/events/ib_umad.h):
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] qpn @@ got restricted __be32 [usertype] qpn @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] qpn
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] qpn
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] qkey @@ got restricted __be32 [usertype] qkey @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] qkey
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] qkey
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] lid @@ got restricted __be16 [usertype] lid @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] lid
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] lid
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] flow_label @@ got restricted __be32 [usertype] flow_label @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] flow_label
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] flow_label
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] mad_status @@ got restricted __be16 [usertype] status @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] mad_status
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] status
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] class_specific @@ got restricted __be16 [usertype] class_specific @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] class_specific
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] class_specific
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long [usertype] tid @@ got restricted __be64 [usertype] tid @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned long long [usertype] tid
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be64 [usertype] tid
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] attr_id @@ got restricted __be16 [usertype] attr_id @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] attr_id
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] attr_id
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] attr_mod @@ got restricted __be32 [usertype] attr_mod @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] attr_mod
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] attr_mod
drivers/infiniband/core/user_mad.c: note: in included file (through include/trace/perf.h, include/trace/define_trace.h, include/trace/events/ib_umad.h):
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] qpn @@ got restricted __be32 [usertype] qpn @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] qpn
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] qpn
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] qkey @@ got restricted __be32 [usertype] qkey @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] qkey
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] qkey
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] lid @@ got restricted __be16 [usertype] lid @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] lid
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] lid
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] flow_label @@ got restricted __be32 [usertype] flow_label @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] flow_label
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] flow_label
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] mad_status @@ got restricted __be16 [usertype] status @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] mad_status
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] status
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] class_specific @@ got restricted __be16 [usertype] class_specific @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] class_specific
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] class_specific
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long [usertype] tid @@ got restricted __be64 [usertype] tid @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned long long [usertype] tid
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be64 [usertype] tid
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] attr_id @@ got restricted __be16 [usertype] attr_id @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned short [usertype] attr_id
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be16 [usertype] attr_id
include/trace/events/ib_umad.h:16:1: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] attr_mod @@ got restricted __be32 [usertype] attr_mod @@
include/trace/events/ib_umad.h:16:1: sparse: expected unsigned int [usertype] attr_mod
include/trace/events/ib_umad.h:16:1: sparse: got restricted __be32 [usertype] attr_mod
>> drivers/infiniband/core/user_mad.c:749:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/infiniband/core/user_mad.c:749:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/infiniband/core/user_mad.c:749:13: sparse: got unsigned int *__ptr_clean
>> drivers/infiniband/core/user_mad.c:749:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/infiniband/core/user_mad.c:749:13: sparse: expected void [noderef] __user *__ptr_pu
drivers/infiniband/core/user_mad.c:749:13: sparse: got unsigned int *__ptr_clean
drivers/infiniband/core/user_mad.c:815:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/infiniband/core/user_mad.c:815:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/infiniband/core/user_mad.c:815:21: sparse: got unsigned int *__ptr_clean
drivers/infiniband/core/user_mad.c:815:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/infiniband/core/user_mad.c:815:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/infiniband/core/user_mad.c:815:21: sparse: got unsigned int *__ptr_clean
drivers/infiniband/core/user_mad.c:863:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/infiniband/core/user_mad.c:863:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/infiniband/core/user_mad.c:863:13: sparse: got unsigned int *__ptr_clean
drivers/infiniband/core/user_mad.c:863:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/infiniband/core/user_mad.c:863:13: sparse: expected void [noderef] __user *__ptr_pu
drivers/infiniband/core/user_mad.c:863:13: sparse: got unsigned int *__ptr_clean
drivers/infiniband/core/user_mad.c:896:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/infiniband/core/user_mad.c:896:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/infiniband/core/user_mad.c:896:13: sparse: got unsigned int *__ptr_clean
--
>> drivers/infiniband/core/uverbs_main.c:632:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long const *__ptr_clean @@
drivers/infiniband/core/uverbs_main.c:632:31: sparse: expected void const volatile [noderef] __user *ptr
drivers/infiniband/core/uverbs_main.c:632:31: sparse: got unsigned long long const *__ptr_clean
--
>> drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short *__ptr_clean @@
drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse: got unsigned short *__ptr_clean
>> drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned short *__ptr_clean @@
drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse: expected void [noderef] __user *__ptr_pu
drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse: got unsigned short *__ptr_clean
>> drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse: got unsigned long long *__ptr_clean
>> drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse: expected void [noderef] __user *__ptr_pu
drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse: got unsigned long long *__ptr_clean
drivers/infiniband/core/uverbs_ioctl.c:423:17: sparse: sparse: incorrect type in assignment (different modifiers) @@ expected int ( *handler )( ... ) @@ got int ( [noderef] * )( ... ) @@
drivers/infiniband/core/uverbs_ioctl.c:423:17: sparse: expected int ( *handler )( ... )
drivers/infiniband/core/uverbs_ioctl.c:423:17: sparse: got int ( [noderef] * )( ... )
--
>> net/tipc/socket.c:3242:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/tipc/socket.c:3242:24: sparse: expected void const volatile [noderef] __user *ptr
net/tipc/socket.c:3242:24: sparse: got int *__ptr_clean
>> net/tipc/socket.c:3242:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/tipc/socket.c:3242:24: sparse: expected void [noderef] __user *__ptr_pu
net/tipc/socket.c:3242:24: sparse: got int *__ptr_clean
net/tipc/socket.c:3245:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/tipc/socket.c:3245:15: sparse: expected void const volatile [noderef] __user *ptr
net/tipc/socket.c:3245:15: sparse: got int *__ptr_clean
net/tipc/socket.c:3295:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/tipc/socket.c:3295:16: sparse: expected void const volatile [noderef] __user *ptr
net/tipc/socket.c:3295:16: sparse: got int *__ptr_clean
net/tipc/socket.c:3295:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/tipc/socket.c:3295:16: sparse: expected void [noderef] __user *__ptr_pu
net/tipc/socket.c:3295:16: sparse: got int *__ptr_clean
--
net/sctp/socket.c: note: in included file (through include/net/sctp/sctp.h):
include/net/sctp/structs.h:335:41: sparse: sparse: array of flexible structures
>> net/sctp/socket.c:1423:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:1423:21: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:1423:21: sparse: got int *__ptr_clean
>> net/sctp/socket.c:1423:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:1423:21: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:1423:21: sparse: got int *__ptr_clean
net/sctp/socket.c:4922:22: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:4922:22: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:4922:22: sparse: got int *__ptr_clean
net/sctp/socket.c:4922:22: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:4922:22: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:4922:22: sparse: got int *__ptr_clean
net/sctp/socket.c:5446:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5446:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5446:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5446:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5446:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5446:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5514:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5514:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5514:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5514:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5514:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5514:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5545:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5545:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5545:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5545:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5545:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5545:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5568:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5568:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5568:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5568:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5568:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5568:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5600:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5600:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5600:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5600:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5600:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5600:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5602:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5602:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5602:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5602:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5602:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5602:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5711:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5711:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5711:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5711:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5711:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5711:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5746:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5746:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5746:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5746:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5746:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5746:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5996:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:5996:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:5996:13: sparse: got int *__ptr_clean
net/sctp/socket.c:5996:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:5996:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:5996:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6094:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6094:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6094:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6094:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6094:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6094:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6116:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6116:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6116:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6116:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6116:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6116:13: sparse: got int *__ptr_clean
>> net/sctp/socket.c:6166:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/sctp/socket.c:6166:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6166:13: sparse: got unsigned int *__ptr_clean
>> net/sctp/socket.c:6166:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/sctp/socket.c:6166:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6166:13: sparse: got unsigned int *__ptr_clean
net/sctp/socket.c:6169:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6169:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6169:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6169:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6169:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6169:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6308:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/sctp/socket.c:6308:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6308:13: sparse: got unsigned int *__ptr_clean
net/sctp/socket.c:6308:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/sctp/socket.c:6308:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6308:13: sparse: got unsigned int *__ptr_clean
net/sctp/socket.c:6315:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6315:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6315:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6315:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6315:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6315:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6356:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6356:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6356:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6356:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6356:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6356:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6382:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6382:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6382:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6382:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6382:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6382:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6444:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6444:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6444:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6444:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6444:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6444:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6488:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6488:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6488:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6488:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6488:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6488:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6516:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6516:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6516:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6516:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6516:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6516:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6569:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6569:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6569:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6569:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6569:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6569:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6639:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6639:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6639:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6639:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6639:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6639:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6669:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6669:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6669:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6669:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6669:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6669:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6703:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6703:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6703:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6703:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6703:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6703:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6768:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6768:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6768:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6768:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6768:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6768:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6796:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6796:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6796:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6796:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6796:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6796:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6820:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6820:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6820:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6820:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6820:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6820:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6895:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/sctp/socket.c:6895:13: sparse: expected void const volatile [noderef] __user *ptr
net/sctp/socket.c:6895:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6895:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/sctp/socket.c:6895:13: sparse: expected void [noderef] __user *__ptr_pu
net/sctp/socket.c:6895:13: sparse: got int *__ptr_clean
net/sctp/socket.c:6897:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/sctp/socket.c:6897:13: sparse: expected void const volatile [noderef] __user *ptr
--
>> net/tls/tls_main.c:344:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/tls/tls_main.c:344:13: sparse: expected void const volatile [noderef] __user *ptr
net/tls/tls_main.c:344:13: sparse: got int *__ptr_clean
--
>> drivers/nvme/host/ioctl.c:246:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/nvme/host/ioctl.c:246:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/nvme/host/ioctl.c:246:21: sparse: got unsigned int *__ptr_clean
>> drivers/nvme/host/ioctl.c:246:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/nvme/host/ioctl.c:246:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/nvme/host/ioctl.c:246:21: sparse: got unsigned int *__ptr_clean
>> drivers/nvme/host/ioctl.c:292:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/nvme/host/ioctl.c:292:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/nvme/host/ioctl.c:292:21: sparse: got unsigned long long *__ptr_clean
>> drivers/nvme/host/ioctl.c:292:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
drivers/nvme/host/ioctl.c:292:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/nvme/host/ioctl.c:292:21: sparse: got unsigned long long *__ptr_clean
--
>> drivers/platform/x86/wmi.c:903:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/platform/x86/wmi.c:903:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/platform/x86/wmi.c:903:13: sparse: got unsigned long long *__ptr_clean
--
>> arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse: expected void const volatile [noderef] __user *ptr
arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse: got int *__ptr_clean
>> arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse: expected void [noderef] __user *__ptr_pu
arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse: got int *__ptr_clean
arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse: expected void const volatile [noderef] __user *ptr
arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse: got int *__ptr_clean
arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse: expected void [noderef] __user *__ptr_pu
arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse: got int *__ptr_clean
arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse: expected void const volatile [noderef] __user *ptr
arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse: got int *__ptr_clean
arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse: expected void [noderef] __user *__ptr_pu
arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse: got int *__ptr_clean
--
kernel/rseq.c:110:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
kernel/rseq.c:110:13: sparse: expected void const volatile [noderef] __user *ptr
kernel/rseq.c:110:13: sparse: got unsigned int *__ptr_clean
kernel/rseq.c:110:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
kernel/rseq.c:110:13: sparse: expected void [noderef] __user *__ptr_pu
kernel/rseq.c:110:13: sparse: got unsigned int *__ptr_clean
kernel/rseq.c:117:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
kernel/rseq.c:117:13: sparse: expected void const volatile [noderef] __user *ptr
kernel/rseq.c:117:13: sparse: got unsigned int *__ptr_clean
kernel/rseq.c:117:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
kernel/rseq.c:117:13: sparse: expected void [noderef] __user *__ptr_pu
kernel/rseq.c:117:13: sparse: got unsigned int *__ptr_clean
>> kernel/rseq.c:131:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
kernel/rseq.c:131:13: sparse: expected void const volatile [noderef] __user *ptr
kernel/rseq.c:131:13: sparse: got unsigned long long *__ptr_clean
kernel/rseq.c:160:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
kernel/rseq.c:160:15: sparse: expected void const volatile [noderef] __user *ptr
kernel/rseq.c:160:15: sparse: got unsigned int *__ptr_clean
kernel/rseq.c:179:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
kernel/rseq.c:179:15: sparse: expected void const volatile [noderef] __user *ptr
kernel/rseq.c:179:15: sparse: got unsigned int *__ptr_clean
kernel/rseq.c:220:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
kernel/rseq.c:220:16: sparse: expected void const volatile [noderef] __user *ptr
kernel/rseq.c:220:16: sparse: got unsigned long long *__ptr_clean
>> kernel/rseq.c:220:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
kernel/rseq.c:220:16: sparse: expected void [noderef] __user *__ptr_pu
kernel/rseq.c:220:16: sparse: got unsigned long long *__ptr_clean
--
>> fs/cifs/dfs_cache.c:308:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
fs/cifs/dfs_cache.c:308:14: sparse: expected void const volatile [noderef] __user *ptr
fs/cifs/dfs_cache.c:308:14: sparse: got char const *__ptr_clean
--
>> fs/ext2/ioctl.c:65:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/ext2/ioctl.c:65:24: sparse: expected void const volatile [noderef] __user *ptr
fs/ext2/ioctl.c:65:24: sparse: got int *__ptr_clean
>> fs/ext2/ioctl.c:65:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
fs/ext2/ioctl.c:65:24: sparse: expected void [noderef] __user *__ptr_pu
fs/ext2/ioctl.c:65:24: sparse: got int *__ptr_clean
fs/ext2/ioctl.c:74:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/ext2/ioctl.c:74:21: sparse: expected void const volatile [noderef] __user *ptr
fs/ext2/ioctl.c:74:21: sparse: got int *__ptr_clean
fs/ext2/ioctl.c:94:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/ext2/ioctl.c:94:32: sparse: expected void const volatile [noderef] __user *ptr
fs/ext2/ioctl.c:94:32: sparse: got int *__ptr_clean
fs/ext2/ioctl.c:94:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
fs/ext2/ioctl.c:94:32: sparse: expected void [noderef] __user *__ptr_pu
fs/ext2/ioctl.c:94:32: sparse: got int *__ptr_clean
fs/ext2/ioctl.c:105:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/ext2/ioctl.c:105:21: sparse: expected void const volatile [noderef] __user *ptr
fs/ext2/ioctl.c:105:21: sparse: got int *__ptr_clean
--
>> fs/ext4/ioctl.c:806:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/ext4/ioctl.c:806:13: sparse: expected void const volatile [noderef] __user *ptr
fs/ext4/ioctl.c:806:13: sparse: got unsigned int *__ptr_clean
>> fs/ext4/ioctl.c:1163:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/ext4/ioctl.c:1163:24: sparse: expected void const volatile [noderef] __user *ptr
fs/ext4/ioctl.c:1163:24: sparse: got int *__ptr_clean
>> fs/ext4/ioctl.c:1163:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
fs/ext4/ioctl.c:1163:24: sparse: expected void [noderef] __user *__ptr_pu
fs/ext4/ioctl.c:1163:24: sparse: got int *__ptr_clean
fs/ext4/ioctl.c:1183:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/ext4/ioctl.c:1183:21: sparse: expected void const volatile [noderef] __user *ptr
fs/ext4/ioctl.c:1183:21: sparse: got int *__ptr_clean
fs/ext4/ioctl.c:1216:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/ext4/ioctl.c:1216:21: sparse: expected void const volatile [noderef] __user *ptr
fs/ext4/ioctl.c:1216:21: sparse: got unsigned int *__ptr_clean
fs/ext4/ioctl.c:1536:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/ext4/ioctl.c:1536:24: sparse: expected void const volatile [noderef] __user *ptr
fs/ext4/ioctl.c:1536:24: sparse: got unsigned int *__ptr_clean
>> fs/ext4/ioctl.c:1536:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
fs/ext4/ioctl.c:1536:24: sparse: expected void [noderef] __user *__ptr_pu
fs/ext4/ioctl.c:1536:24: sparse: got unsigned int *__ptr_clean
--
fs/f2fs/file.c:49:54: sparse: sparse: cast from restricted vm_fault_t
>> fs/f2fs/file.c:1986:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/f2fs/file.c:1986:16: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:1986:16: sparse: got int *__ptr_clean
>> fs/f2fs/file.c:1986:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
fs/f2fs/file.c:1986:16: sparse: expected void [noderef] __user *__ptr_pu
fs/f2fs/file.c:1986:16: sparse: got int *__ptr_clean
>> fs/f2fs/file.c:2214:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/f2fs/file.c:2214:13: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:2214:13: sparse: got unsigned int *__ptr_clean
fs/f2fs/file.c:2447:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/f2fs/file.c:2447:13: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:2447:13: sparse: got unsigned int *__ptr_clean
fs/f2fs/file.c:2980:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/f2fs/file.c:2980:16: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:2980:16: sparse: got unsigned int *__ptr_clean
>> fs/f2fs/file.c:2980:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
fs/f2fs/file.c:2980:16: sparse: expected void [noderef] __user *__ptr_pu
fs/f2fs/file.c:2980:16: sparse: got unsigned int *__ptr_clean
fs/f2fs/file.c:3140:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/f2fs/file.c:3140:13: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:3140:13: sparse: got unsigned int *__ptr_clean
fs/f2fs/file.c:3197:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/f2fs/file.c:3197:16: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:3197:16: sparse: got unsigned int *__ptr_clean
fs/f2fs/file.c:3197:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
fs/f2fs/file.c:3197:16: sparse: expected void [noderef] __user *__ptr_pu
fs/f2fs/file.c:3197:16: sparse: got unsigned int *__ptr_clean
fs/f2fs/file.c:3301:36: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short const [usertype] *pwcs @@ got restricted __le16 * @@
fs/f2fs/file.c:3301:36: sparse: expected unsigned short const [usertype] *pwcs
fs/f2fs/file.c:3301:36: sparse: got restricted __le16 *
fs/f2fs/file.c:3337:28: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected unsigned short [usertype] *pwcs @@ got restricted __le16 * @@
fs/f2fs/file.c:3337:28: sparse: expected unsigned short [usertype] *pwcs
fs/f2fs/file.c:3337:28: sparse: got restricted __le16 *
>> fs/f2fs/file.c:3362:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
fs/f2fs/file.c:3362:16: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:3362:16: sparse: got unsigned long long *__ptr_clean
>> fs/f2fs/file.c:3362:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
fs/f2fs/file.c:3362:16: sparse: expected void [noderef] __user *__ptr_pu
fs/f2fs/file.c:3362:16: sparse: got unsigned long long *__ptr_clean
fs/f2fs/file.c:3512:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
fs/f2fs/file.c:3512:23: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:3512:23: sparse: got unsigned long long *__ptr_clean
fs/f2fs/file.c:3512:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
fs/f2fs/file.c:3512:23: sparse: expected void [noderef] __user *__ptr_pu
fs/f2fs/file.c:3512:23: sparse: got unsigned long long *__ptr_clean
fs/f2fs/file.c:3671:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
fs/f2fs/file.c:3671:23: sparse: expected void const volatile [noderef] __user *ptr
fs/f2fs/file.c:3671:23: sparse: got unsigned long long *__ptr_clean
fs/f2fs/file.c:3671:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
fs/f2fs/file.c:3671:23: sparse: expected void [noderef] __user *__ptr_pu
fs/f2fs/file.c:3671:23: sparse: got unsigned long long *__ptr_clean
--
>> fs/jfs/jfs_debug.c:36:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
fs/jfs/jfs_debug.c:36:13: sparse: expected void const volatile [noderef] __user *ptr
fs/jfs/jfs_debug.c:36:13: sparse: got char const *__ptr_clean
--
>> fs/reiserfs/ioctl.c:96:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/reiserfs/ioctl.c:96:23: sparse: expected void const volatile [noderef] __user *ptr
fs/reiserfs/ioctl.c:96:23: sparse: got int *__ptr_clean
>> fs/reiserfs/ioctl.c:96:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
fs/reiserfs/ioctl.c:96:23: sparse: expected void [noderef] __user *__ptr_pu
fs/reiserfs/ioctl.c:96:23: sparse: got int *__ptr_clean
fs/reiserfs/ioctl.c:106:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/reiserfs/ioctl.c:106:21: sparse: expected void const volatile [noderef] __user *ptr
fs/reiserfs/ioctl.c:106:21: sparse: got int *__ptr_clean
--
>> block/bsg.c:87:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:87:16: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:87:16: sparse: got int *__ptr_clean
>> block/bsg.c:87:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
block/bsg.c:87:16: sparse: expected void [noderef] __user *__ptr_pu
block/bsg.c:87:16: sparse: got int *__ptr_clean
block/bsg.c:94:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:94:13: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:94:13: sparse: got int *__ptr_clean
block/bsg.c:123:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:123:24: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:123:24: sparse: got int *__ptr_clean
block/bsg.c:123:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
block/bsg.c:123:24: sparse: expected void [noderef] __user *__ptr_pu
block/bsg.c:123:24: sparse: got int *__ptr_clean
block/bsg.c:125:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:125:24: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:125:24: sparse: got int *__ptr_clean
block/bsg.c:125:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
block/bsg.c:125:24: sparse: expected void [noderef] __user *__ptr_pu
block/bsg.c:125:24: sparse: got int *__ptr_clean
block/bsg.c:127:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:127:24: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:127:24: sparse: got int *__ptr_clean
block/bsg.c:127:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
block/bsg.c:127:24: sparse: expected void [noderef] __user *__ptr_pu
block/bsg.c:127:24: sparse: got int *__ptr_clean
block/bsg.c:129:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:129:21: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:129:21: sparse: got int *__ptr_clean
block/bsg.c:136:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:136:24: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:136:24: sparse: got int *__ptr_clean
block/bsg.c:136:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
block/bsg.c:136:24: sparse: expected void [noderef] __user *__ptr_pu
block/bsg.c:136:24: sparse: got int *__ptr_clean
block/bsg.c:139:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:139:21: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:139:21: sparse: got int *__ptr_clean
block/bsg.c:147:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
block/bsg.c:147:24: sparse: expected void const volatile [noderef] __user *ptr
block/bsg.c:147:24: sparse: got int *__ptr_clean
block/bsg.c:147:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
block/bsg.c:147:24: sparse: expected void [noderef] __user *__ptr_pu
block/bsg.c:147:24: sparse: got int *__ptr_clean
--
>> drivers/acpi/ec_sys.c:53:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char *__ptr_clean @@
drivers/acpi/ec_sys.c:53:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/acpi/ec_sys.c:53:21: sparse: got char *__ptr_clean
>> drivers/acpi/ec_sys.c:53:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got char *__ptr_clean @@
drivers/acpi/ec_sys.c:53:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/acpi/ec_sys.c:53:21: sparse: got char *__ptr_clean
>> drivers/acpi/ec_sys.c:87:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
drivers/acpi/ec_sys.c:87:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/acpi/ec_sys.c:87:21: sparse: got char const *__ptr_clean
--
>> sound/core/compress_offload.c:975:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
sound/core/compress_offload.c:975:26: sparse: expected void const volatile [noderef] __user *ptr
sound/core/compress_offload.c:975:26: sparse: got int *__ptr_clean
>> sound/core/compress_offload.c:975:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
sound/core/compress_offload.c:975:26: sparse: expected void [noderef] __user *__ptr_pu
sound/core/compress_offload.c:975:26: sparse: got int *__ptr_clean
--
>> net/bluetooth/af_bluetooth.c:511:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/bluetooth/af_bluetooth.c:511:23: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/af_bluetooth.c:511:23: sparse: got int *__ptr_clean
>> net/bluetooth/af_bluetooth.c:511:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/bluetooth/af_bluetooth.c:511:23: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/af_bluetooth.c:511:23: sparse: got int *__ptr_clean
net/bluetooth/af_bluetooth.c:522:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/bluetooth/af_bluetooth.c:522:23: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/af_bluetooth.c:522:23: sparse: got int *__ptr_clean
net/bluetooth/af_bluetooth.c:522:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/bluetooth/af_bluetooth.c:522:23: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/af_bluetooth.c:522:23: sparse: got int *__ptr_clean
net/bluetooth/af_bluetooth.c:176:25: sparse: sparse: context imbalance in 'bt_accept_enqueue' - different lock contexts for basic block
--
>> net/bluetooth/hci_core.c:825:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short *__ptr_clean @@
net/bluetooth/hci_core.c:825:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/hci_core.c:825:13: sparse: got unsigned short *__ptr_clean
--
>> net/bluetooth/hci_sock.c:1968:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/bluetooth/hci_sock.c:1968:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/hci_sock.c:1968:13: sparse: got int *__ptr_clean
>> net/bluetooth/hci_sock.c:1985:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char *__ptr_clean @@
net/bluetooth/hci_sock.c:1985:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/hci_sock.c:1985:21: sparse: got char *__ptr_clean
>> net/bluetooth/hci_sock.c:1985:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got char *__ptr_clean @@
net/bluetooth/hci_sock.c:1985:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/hci_sock.c:1985:21: sparse: got char *__ptr_clean
net/bluetooth/hci_sock.c:1995:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char *__ptr_clean @@
net/bluetooth/hci_sock.c:1995:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/hci_sock.c:1995:21: sparse: got char *__ptr_clean
net/bluetooth/hci_sock.c:1995:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got char *__ptr_clean @@
net/bluetooth/hci_sock.c:1995:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/hci_sock.c:1995:21: sparse: got char *__ptr_clean
>> net/bluetooth/hci_sock.c:2045:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short *__ptr_clean @@
net/bluetooth/hci_sock.c:2045:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/hci_sock.c:2045:21: sparse: got unsigned short *__ptr_clean
>> net/bluetooth/hci_sock.c:2045:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned short *__ptr_clean @@
net/bluetooth/hci_sock.c:2045:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/hci_sock.c:2045:21: sparse: got unsigned short *__ptr_clean
--
>> net/bluetooth/l2cap_sock.c:464:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:464:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:464:13: sparse: got int *__ptr_clean
>> net/bluetooth/l2cap_sock.c:539:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:539:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:539:21: sparse: got unsigned int *__ptr_clean
>> net/bluetooth/l2cap_sock.c:539:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:539:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:539:21: sparse: got unsigned int *__ptr_clean
net/bluetooth/l2cap_sock.c:589:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:589:13: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:589:13: sparse: got int *__ptr_clean
net/bluetooth/l2cap_sock.c:625:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:625:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:625:21: sparse: got unsigned int *__ptr_clean
net/bluetooth/l2cap_sock.c:625:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:625:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:625:21: sparse: got unsigned int *__ptr_clean
net/bluetooth/l2cap_sock.c:632:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:632:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:632:21: sparse: got unsigned int *__ptr_clean
net/bluetooth/l2cap_sock.c:632:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:632:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:632:21: sparse: got unsigned int *__ptr_clean
net/bluetooth/l2cap_sock.c:654:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:654:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:654:21: sparse: got unsigned int *__ptr_clean
net/bluetooth/l2cap_sock.c:654:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:654:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:654:21: sparse: got unsigned int *__ptr_clean
>> net/bluetooth/l2cap_sock.c:669:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short *__ptr_clean @@
net/bluetooth/l2cap_sock.c:669:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:669:21: sparse: got unsigned short *__ptr_clean
>> net/bluetooth/l2cap_sock.c:669:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned short *__ptr_clean @@
net/bluetooth/l2cap_sock.c:669:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:669:21: sparse: got unsigned short *__ptr_clean
net/bluetooth/l2cap_sock.c:679:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned short *__ptr_clean @@
net/bluetooth/l2cap_sock.c:679:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:679:21: sparse: got unsigned short *__ptr_clean
net/bluetooth/l2cap_sock.c:679:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned short *__ptr_clean @@
net/bluetooth/l2cap_sock.c:679:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:679:21: sparse: got unsigned short *__ptr_clean
net/bluetooth/l2cap_sock.c:691:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:691:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:691:21: sparse: got unsigned int *__ptr_clean
net/bluetooth/l2cap_sock.c:691:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/bluetooth/l2cap_sock.c:691:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:691:21: sparse: got unsigned int *__ptr_clean
>> net/bluetooth/l2cap_sock.c:712:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned char *__ptr_clean @@
net/bluetooth/l2cap_sock.c:712:21: sparse: expected void const volatile [noderef] __user *ptr
net/bluetooth/l2cap_sock.c:712:21: sparse: got unsigned char *__ptr_clean
>> net/bluetooth/l2cap_sock.c:712:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned char *__ptr_clean @@
net/bluetooth/l2cap_sock.c:712:21: sparse: expected void [noderef] __user *__ptr_pu
net/bluetooth/l2cap_sock.c:712:21: sparse: got unsigned char *__ptr_clean
--
>> drivers/android/binder.c:3555:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:3555:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3555:21: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:3575:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:3575:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3575:29: sparse: got unsigned int *__ptr_clean
>> drivers/android/binder.c:3642:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:3642:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3642:29: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:3645:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:3645:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3645:29: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:3714:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:3714:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3714:29: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:3811:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:3811:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3811:29: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:3814:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:3814:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3814:29: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:3933:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:3933:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:3933:29: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:4009:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4009:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4009:13: sparse: got unsigned int *__ptr_clean
>> drivers/android/binder.c:4009:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4009:13: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4009:13: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4013:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:4013:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4013:13: sparse: got unsigned long long *__ptr_clean
>> drivers/android/binder.c:4013:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:4013:13: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4013:13: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:4017:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:4017:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4017:13: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:4017:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:4017:13: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4017:13: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:4140:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4140:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4140:21: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4140:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4140:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4140:21: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4222:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4222:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4222:29: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4222:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4222:29: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4222:29: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4240:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4240:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4240:29: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4240:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4240:29: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4240:29: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4366:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4366:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4366:29: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4366:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4366:29: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4366:29: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4369:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:4369:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4369:29: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:4369:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long long *__ptr_clean @@
drivers/android/binder.c:4369:29: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4369:29: sparse: got unsigned long long *__ptr_clean
drivers/android/binder.c:4441:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4441:37: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4441:37: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4441:37: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4441:37: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4441:37: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4461:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4461:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4461:21: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4461:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4461:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4461:21: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4526:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4526:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:4526:21: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4526:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/android/binder.c:4526:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:4526:21: sparse: got unsigned int *__ptr_clean
drivers/android/binder.c:4780:24: sparse: sparse: incorrect type in return expression (different base types) @@ expected restricted __poll_t @@ got int @@
drivers/android/binder.c:4780:24: sparse: expected restricted __poll_t
drivers/android/binder.c:4780:24: sparse: got int
>> drivers/android/binder.c:5139:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int *__ptr_clean @@
drivers/android/binder.c:5139:21: sparse: expected void const volatile [noderef] __user *ptr
drivers/android/binder.c:5139:21: sparse: got signed int *__ptr_clean
>> drivers/android/binder.c:5139:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed int *__ptr_clean @@
drivers/android/binder.c:5139:21: sparse: expected void [noderef] __user *__ptr_pu
drivers/android/binder.c:5139:21: sparse: got signed int *__ptr_clean
--
>> net/core/pktgen.c:756:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
net/core/pktgen.c:756:21: sparse: expected void const volatile [noderef] __user *ptr
net/core/pktgen.c:756:21: sparse: got char const *__ptr_clean
net/core/pktgen.c:774:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
net/core/pktgen.c:774:21: sparse: expected void const volatile [noderef] __user *ptr
net/core/pktgen.c:774:21: sparse: got char const *__ptr_clean
net/core/pktgen.c:800:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
net/core/pktgen.c:800:21: sparse: expected void const volatile [noderef] __user *ptr
net/core/pktgen.c:800:21: sparse: got char const *__ptr_clean
net/core/pktgen.c:817:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
net/core/pktgen.c:817:21: sparse: expected void const volatile [noderef] __user *ptr
net/core/pktgen.c:817:21: sparse: got char const *__ptr_clean
net/core/pktgen.c:857:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
net/core/pktgen.c:857:21: sparse: expected void const volatile [noderef] __user *ptr
net/core/pktgen.c:857:21: sparse: got char const *__ptr_clean
net/core/pktgen.c:877:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
net/core/pktgen.c:877:21: sparse: expected void const volatile [noderef] __user *ptr
net/core/pktgen.c:877:21: sparse: got char const *__ptr_clean
net/core/pktgen.c:907:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char const *__ptr_clean @@
net/core/pktgen.c:907:21: sparse: expected void const volatile [noderef] __user *ptr
net/core/pktgen.c:907:21: sparse: got char const *__ptr_clean
--
>> net/decnet/af_decnet.c:1537:12: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/decnet/af_decnet.c:1537:12: sparse: expected void const volatile [noderef] __user *ptr
net/decnet/af_decnet.c:1537:12: sparse: got int *__ptr_clean
net/decnet/af_decnet.c:1632:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/decnet/af_decnet.c:1632:21: sparse: expected void const volatile [noderef] __user *ptr
net/decnet/af_decnet.c:1632:21: sparse: got int *__ptr_clean
>> net/decnet/af_decnet.c:1632:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/decnet/af_decnet.c:1632:21: sparse: expected void [noderef] __user *__ptr_pu
net/decnet/af_decnet.c:1632:21: sparse: got int *__ptr_clean
net/decnet/af_decnet.c:250:22: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int hash @@ got restricted __le16 [usertype] sdn_objnamel @@
net/decnet/af_decnet.c:250:22: sparse: expected unsigned int hash
net/decnet/af_decnet.c:250:22: sparse: got restricted __le16 [usertype] sdn_objnamel
net/decnet/af_decnet.c:1239:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/decnet/af_decnet.c:1239:23: sparse: expected void const volatile [noderef] __user *ptr
net/decnet/af_decnet.c:1239:23: sparse: got int *__ptr_clean
net/decnet/af_decnet.c:1239:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/decnet/af_decnet.c:1239:23: sparse: expected void [noderef] __user *__ptr_pu
net/decnet/af_decnet.c:1239:23: sparse: got int *__ptr_clean
net/decnet/af_decnet.c:1252:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/decnet/af_decnet.c:1252:23: sparse: expected void const volatile [noderef] __user *ptr
net/decnet/af_decnet.c:1252:23: sparse: got int *__ptr_clean
net/decnet/af_decnet.c:1252:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/decnet/af_decnet.c:1252:23: sparse: expected void [noderef] __user *__ptr_pu
net/decnet/af_decnet.c:1252:23: sparse: got int *__ptr_clean
net/decnet/af_decnet.c: note: in included file:
include/net/dn.h:192:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] sport @@ got restricted __le16 [usertype] addrloc @@
include/net/dn.h:192:24: sparse: expected restricted __be16 [usertype] sport
include/net/dn.h:192:24: sparse: got restricted __le16 [usertype] addrloc
include/net/dn.h:193:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __be16 [usertype] dport @@ got restricted __le16 [usertype] addrrem @@
include/net/dn.h:193:24: sparse: expected restricted __be16 [usertype] dport
include/net/dn.h:193:24: sparse: got restricted __le16 [usertype] addrrem
net/decnet/af_decnet.c:2164:9: sparse: sparse: context imbalance in 'dn_socket_get_idx' - wrong count at exit
net/decnet/af_decnet.c:2184:9: sparse: sparse: context imbalance in 'dn_socket_seq_next' - unexpected unlock
net/decnet/af_decnet.c:2193:17: sparse: sparse: context imbalance in 'dn_socket_seq_stop' - unexpected unlock
--
>> net/ipv4/ipmr.c:1568:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/ipv4/ipmr.c:1568:13: sparse: expected void const volatile [noderef] __user *ptr
net/ipv4/ipmr.c:1568:13: sparse: got int *__ptr_clean
net/ipv4/ipmr.c:1573:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/ipv4/ipmr.c:1573:13: sparse: expected void const volatile [noderef] __user *ptr
net/ipv4/ipmr.c:1573:13: sparse: got int *__ptr_clean
>> net/ipv4/ipmr.c:1573:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/ipv4/ipmr.c:1573:13: sparse: expected void [noderef] __user *__ptr_pu
net/ipv4/ipmr.c:1573:13: sparse: got int *__ptr_clean
net/ipv4/ipmr.c:2889:13: sparse: sparse: context imbalance in 'ipmr_vif_seq_start' - different lock contexts for basic block
net/ipv4/ipmr.c: note: in included file (through include/linux/mroute.h):
include/linux/mroute_base.h:429:31: sparse: sparse: context imbalance in 'mr_mfc_seq_stop' - unexpected unlock
--
>> fs/xfs/xfs_ioctl.c:1420:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed long long *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1420:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1420:13: sparse: got signed long long *__ptr_clean
>> fs/xfs/xfs_ioctl.c:1420:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed long long *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1420:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1420:13: sparse: got signed long long *__ptr_clean
fs/xfs/xfs_ioctl.c:1421:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed long long *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1421:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1421:13: sparse: got signed long long *__ptr_clean
fs/xfs/xfs_ioctl.c:1421:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed long long *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1421:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1421:13: sparse: got signed long long *__ptr_clean
fs/xfs/xfs_ioctl.c:1422:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed long long *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1422:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1422:13: sparse: got signed long long *__ptr_clean
fs/xfs/xfs_ioctl.c:1422:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed long long *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1422:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1422:13: sparse: got signed long long *__ptr_clean
>> fs/xfs/xfs_ioctl.c:1423:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1423:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1423:13: sparse: got signed int *__ptr_clean
>> fs/xfs/xfs_ioctl.c:1423:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1423:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1423:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1424:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1424:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1424:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1424:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1424:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1424:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1428:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1428:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1428:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1428:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1428:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1428:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1429:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1429:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1429:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1429:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1429:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1429:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1430:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1430:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1430:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1430:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1430:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1430:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1431:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1431:13: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1431:13: sparse: got signed int *__ptr_clean
fs/xfs/xfs_ioctl.c:1431:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got signed int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1431:13: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1431:13: sparse: got signed int *__ptr_clean
>> fs/xfs/xfs_ioctl.c:1934:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1934:24: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:1934:24: sparse: got int *__ptr_clean
>> fs/xfs/xfs_ioctl.c:1934:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:1934:24: sparse: expected void [noderef] __user *__ptr_pu
fs/xfs/xfs_ioctl.c:1934:24: sparse: got int *__ptr_clean
>> fs/xfs/xfs_ioctl.c:2096:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
fs/xfs/xfs_ioctl.c:2096:21: sparse: expected void const volatile [noderef] __user *ptr
fs/xfs/xfs_ioctl.c:2096:21: sparse: got unsigned int *__ptr_clean
--
>> net/l2tp/l2tp_ip.c:583:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/l2tp/l2tp_ip.c:583:16: sparse: expected void const volatile [noderef] __user *ptr
net/l2tp/l2tp_ip.c:583:16: sparse: got int *__ptr_clean
>> net/l2tp/l2tp_ip.c:583:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/l2tp/l2tp_ip.c:583:16: sparse: expected void [noderef] __user *__ptr_pu
net/l2tp/l2tp_ip.c:583:16: sparse: got int *__ptr_clean
--
>> drivers/ata/libata-scsi.c:571:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned long *__ptr_clean @@
drivers/ata/libata-scsi.c:571:24: sparse: expected void const volatile [noderef] __user *ptr
drivers/ata/libata-scsi.c:571:24: sparse: got unsigned long *__ptr_clean
>> drivers/ata/libata-scsi.c:571:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned long *__ptr_clean @@
drivers/ata/libata-scsi.c:571:24: sparse: expected void [noderef] __user *__ptr_pu
drivers/ata/libata-scsi.c:571:24: sparse: got unsigned long *__ptr_clean
--
>> drivers/block/xen-blkfront.c:515:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got char *__ptr_clean @@
drivers/block/xen-blkfront.c:515:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/block/xen-blkfront.c:515:29: sparse: got char *__ptr_clean
>> drivers/block/xen-blkfront.c:515:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got char *__ptr_clean @@
drivers/block/xen-blkfront.c:515:29: sparse: expected void [noderef] __user *__ptr_pu
drivers/block/xen-blkfront.c:515:29: sparse: got char *__ptr_clean
--
>> drivers/comedi/comedi_fops.c:1083:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
drivers/comedi/comedi_fops.c:1083:29: sparse: expected void const volatile [noderef] __user *ptr
drivers/comedi/comedi_fops.c:1083:29: sparse: got unsigned int *__ptr_clean
>> drivers/comedi/comedi_fops.c:1083:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
drivers/comedi/comedi_fops.c:1083:29: sparse: expected void [noderef] __user *__ptr_pu
drivers/comedi/comedi_fops.c:1083:29: sparse: got unsigned int *__ptr_clean
--
>> drivers/fpga/dfl-fme-main.c:143:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/fpga/dfl-fme-main.c:143:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/fpga/dfl-fme-main.c:143:13: sparse: got int *__ptr_clean
drivers/fpga/dfl-fme-main.c:155:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
drivers/fpga/dfl-fme-main.c:155:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/fpga/dfl-fme-main.c:155:13: sparse: got int *__ptr_clean
--
>> net/llc/af_llc.c:1171:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/llc/af_llc.c:1171:14: sparse: expected void const volatile [noderef] __user *ptr
net/llc/af_llc.c:1171:14: sparse: got int *__ptr_clean
net/llc/af_llc.c:1202:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/llc/af_llc.c:1202:13: sparse: expected void const volatile [noderef] __user *ptr
net/llc/af_llc.c:1202:13: sparse: got int *__ptr_clean
>> net/llc/af_llc.c:1202:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/llc/af_llc.c:1202:13: sparse: expected void [noderef] __user *__ptr_pu
net/llc/af_llc.c:1202:13: sparse: got int *__ptr_clean
--
>> net/nfc/llcp_sock.c:319:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/nfc/llcp_sock.c:319:13: sparse: expected void const volatile [noderef] __user *ptr
net/nfc/llcp_sock.c:319:13: sparse: got int *__ptr_clean
>> net/nfc/llcp_sock.c:333:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:333:21: sparse: expected void const volatile [noderef] __user *ptr
net/nfc/llcp_sock.c:333:21: sparse: got unsigned int *__ptr_clean
>> net/nfc/llcp_sock.c:333:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:333:21: sparse: expected void [noderef] __user *__ptr_pu
net/nfc/llcp_sock.c:333:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:342:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:342:21: sparse: expected void const volatile [noderef] __user *ptr
net/nfc/llcp_sock.c:342:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:342:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:342:21: sparse: expected void [noderef] __user *__ptr_pu
net/nfc/llcp_sock.c:342:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:351:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:351:21: sparse: expected void const volatile [noderef] __user *ptr
net/nfc/llcp_sock.c:351:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:351:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:351:21: sparse: expected void [noderef] __user *__ptr_pu
net/nfc/llcp_sock.c:351:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:357:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:357:21: sparse: expected void const volatile [noderef] __user *ptr
net/nfc/llcp_sock.c:357:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:357:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:357:21: sparse: expected void [noderef] __user *__ptr_pu
net/nfc/llcp_sock.c:357:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:363:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:363:21: sparse: expected void const volatile [noderef] __user *ptr
net/nfc/llcp_sock.c:363:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:363:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got unsigned int *__ptr_clean @@
net/nfc/llcp_sock.c:363:21: sparse: expected void [noderef] __user *__ptr_pu
net/nfc/llcp_sock.c:363:21: sparse: got unsigned int *__ptr_clean
net/nfc/llcp_sock.c:375:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/nfc/llcp_sock.c:375:13: sparse: expected void const volatile [noderef] __user *ptr
net/nfc/llcp_sock.c:375:13: sparse: got int *__ptr_clean
>> net/nfc/llcp_sock.c:375:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/nfc/llcp_sock.c:375:13: sparse: expected void [noderef] __user *__ptr_pu
net/nfc/llcp_sock.c:375:13: sparse: got int *__ptr_clean
--
>> net/smc/af_smc.c:2705:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/smc/af_smc.c:2705:13: sparse: expected void const volatile [noderef] __user *ptr
net/smc/af_smc.c:2705:13: sparse: got int *__ptr_clean
net/smc/af_smc.c:2721:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/smc/af_smc.c:2721:13: sparse: expected void const volatile [noderef] __user *ptr
net/smc/af_smc.c:2721:13: sparse: got int *__ptr_clean
>> net/smc/af_smc.c:2721:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/smc/af_smc.c:2721:13: sparse: expected void [noderef] __user *__ptr_pu
net/smc/af_smc.c:2721:13: sparse: got int *__ptr_clean
net/smc/af_smc.c:2953:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int *__ptr_clean @@
net/smc/af_smc.c:2953:16: sparse: expected void const volatile [noderef] __user *ptr
net/smc/af_smc.c:2953:16: sparse: got int *__ptr_clean
net/smc/af_smc.c:2953:16: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *__ptr_pu @@ got int *__ptr_clean @@
net/smc/af_smc.c:2953:16: sparse: expected void [noderef] __user *__ptr_pu
net/smc/af_smc.c:2953:16: sparse: got int *__ptr_clean

vim +49 drivers/scsi/scsi_ioctl.c

^1da177e4c3f415 Linus Torvalds 2005-04-16 34
32993523dc59759 Christoph Hellwig 2005-09-06 35 /**
32993523dc59759 Christoph Hellwig 2005-09-06 36 * ioctl_probe -- return host identification
32993523dc59759 Christoph Hellwig 2005-09-06 37 * @host: host to identify
32993523dc59759 Christoph Hellwig 2005-09-06 38 * @buffer: userspace buffer for identification
32993523dc59759 Christoph Hellwig 2005-09-06 39 *
32993523dc59759 Christoph Hellwig 2005-09-06 40 * Return an identifying string at @buffer, if @buffer is non-NULL, filling
32993523dc59759 Christoph Hellwig 2005-09-06 41 * to the length stored at * (int *) @buffer.
^1da177e4c3f415 Linus Torvalds 2005-04-16 42 */
^1da177e4c3f415 Linus Torvalds 2005-04-16 43 static int ioctl_probe(struct Scsi_Host *host, void __user *buffer)
^1da177e4c3f415 Linus Torvalds 2005-04-16 44 {
^1da177e4c3f415 Linus Torvalds 2005-04-16 45 unsigned int len, slen;
^1da177e4c3f415 Linus Torvalds 2005-04-16 46 const char *string;
^1da177e4c3f415 Linus Torvalds 2005-04-16 47
32993523dc59759 Christoph Hellwig 2005-09-06 48 if (buffer) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 @49 if (get_user(len, (unsigned int __user *) buffer))
^1da177e4c3f415 Linus Torvalds 2005-04-16 50 return -EFAULT;
^1da177e4c3f415 Linus Torvalds 2005-04-16 51
^1da177e4c3f415 Linus Torvalds 2005-04-16 52 if (host->hostt->info)
^1da177e4c3f415 Linus Torvalds 2005-04-16 53 string = host->hostt->info(host);
^1da177e4c3f415 Linus Torvalds 2005-04-16 54 else
^1da177e4c3f415 Linus Torvalds 2005-04-16 55 string = host->hostt->name;
^1da177e4c3f415 Linus Torvalds 2005-04-16 56 if (string) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 57 slen = strlen(string);
^1da177e4c3f415 Linus Torvalds 2005-04-16 58 if (len > slen)
^1da177e4c3f415 Linus Torvalds 2005-04-16 59 len = slen + 1;
^1da177e4c3f415 Linus Torvalds 2005-04-16 60 if (copy_to_user(buffer, string, len))
^1da177e4c3f415 Linus Torvalds 2005-04-16 61 return -EFAULT;
^1da177e4c3f415 Linus Torvalds 2005-04-16 62 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 63 }
32993523dc59759 Christoph Hellwig 2005-09-06 64 return 1;
^1da177e4c3f415 Linus Torvalds 2005-04-16 65 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 66
^1da177e4c3f415 Linus Torvalds 2005-04-16 67 static int ioctl_internal_command(struct scsi_device *sdev, char *cmd,
^1da177e4c3f415 Linus Torvalds 2005-04-16 68 int timeout, int retries)
^1da177e4c3f415 Linus Torvalds 2005-04-16 69 {
^1da177e4c3f415 Linus Torvalds 2005-04-16 70 int result;
^1da177e4c3f415 Linus Torvalds 2005-04-16 71 struct scsi_sense_hdr sshdr;
^1da177e4c3f415 Linus Torvalds 2005-04-16 72
e5f73ce3248f724 Hannes Reinecke 2014-06-25 73 SCSI_LOG_IOCTL(1, sdev_printk(KERN_INFO, sdev,
e5f73ce3248f724 Hannes Reinecke 2014-06-25 74 "Trying ioctl with scsi command %d\n", *cmd));
^1da177e4c3f415 Linus Torvalds 2005-04-16 75
1cf72699c1530c3 James Bottomley 2005-08-28 76 result = scsi_execute_req(sdev, cmd, DMA_NONE, NULL, 0,
f4f4e47e4af6b02 FUJITA Tomonori 2008-12-04 77 &sshdr, timeout, retries, NULL);
^1da177e4c3f415 Linus Torvalds 2005-04-16 78
e5f73ce3248f724 Hannes Reinecke 2014-06-25 79 SCSI_LOG_IOCTL(2, sdev_printk(KERN_INFO, sdev,
e5f73ce3248f724 Hannes Reinecke 2014-06-25 80 "Ioctl returned 0x%x\n", result));
^1da177e4c3f415 Linus Torvalds 2005-04-16 81
ced202f7bd78eb6 Hannes Reinecke 2021-04-27 82 if (result < 0)
ced202f7bd78eb6 Hannes Reinecke 2021-04-27 83 goto out;
464a00c9e0ad45e Hannes Reinecke 2021-04-27 84 if (scsi_sense_valid(&sshdr)) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 85 switch (sshdr.sense_key) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 86 case ILLEGAL_REQUEST:
^1da177e4c3f415 Linus Torvalds 2005-04-16 87 if (cmd[0] == ALLOW_MEDIUM_REMOVAL)
^1da177e4c3f415 Linus Torvalds 2005-04-16 88 sdev->lockable = 0;
^1da177e4c3f415 Linus Torvalds 2005-04-16 89 else
e5f73ce3248f724 Hannes Reinecke 2014-06-25 90 sdev_printk(KERN_INFO, sdev,
e5f73ce3248f724 Hannes Reinecke 2014-06-25 91 "ioctl_internal_command: "
e5f73ce3248f724 Hannes Reinecke 2014-06-25 92 "ILLEGAL REQUEST "
e5f73ce3248f724 Hannes Reinecke 2014-06-25 93 "asc=0x%x ascq=0x%x\n",
^1da177e4c3f415 Linus Torvalds 2005-04-16 94 sshdr.asc, sshdr.ascq);
^1da177e4c3f415 Linus Torvalds 2005-04-16 95 break;
^1da177e4c3f415 Linus Torvalds 2005-04-16 96 case NOT_READY: /* This happens if there is no disc in drive */
a75ad3c27a6ad78 Jens Axboe 2006-07-28 97 if (sdev->removable)
^1da177e4c3f415 Linus Torvalds 2005-04-16 98 break;
df561f6688fef77 Gustavo A. R. Silva 2020-08-23 99 fallthrough;
^1da177e4c3f415 Linus Torvalds 2005-04-16 100 case UNIT_ATTENTION:
^1da177e4c3f415 Linus Torvalds 2005-04-16 101 if (sdev->removable) {
^1da177e4c3f415 Linus Torvalds 2005-04-16 102 sdev->changed = 1;
1cf72699c1530c3 James Bottomley 2005-08-28 103 result = 0; /* This is no longer considered an error */
^1da177e4c3f415 Linus Torvalds 2005-04-16 104 break;
^1da177e4c3f415 Linus Torvalds 2005-04-16 105 }
df561f6688fef77 Gustavo A. R. Silva 2020-08-23 106 fallthrough; /* for non-removable media */
3bf2ff6749f0f87 Bart Van Assche 2017-08-25 107 default:
9ccfc756a70d454 James Bottomley 2005-10-02 108 sdev_printk(KERN_INFO, sdev,
9ccfc756a70d454 James Bottomley 2005-10-02 109 "ioctl_internal_command return code = %x\n",
1cf72699c1530c3 James Bottomley 2005-08-28 110 result);
d811b848ebb78a1 Hannes Reinecke 2014-10-24 111 scsi_print_sense_hdr(sdev, NULL, &sshdr);
^1da177e4c3f415 Linus Torvalds 2005-04-16 112 break;
^1da177e4c3f415 Linus Torvalds 2005-04-16 113 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 114 }
ced202f7bd78eb6 Hannes Reinecke 2021-04-27 115 out:
e5f73ce3248f724 Hannes Reinecke 2014-06-25 116 SCSI_LOG_IOCTL(2, sdev_printk(KERN_INFO, sdev,
e5f73ce3248f724 Hannes Reinecke 2014-06-25 117 "IOCTL Releasing command\n"));
^1da177e4c3f415 Linus Torvalds 2005-04-16 118 return result;
^1da177e4c3f415 Linus Torvalds 2005-04-16 119 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 120
^1da177e4c3f415 Linus Torvalds 2005-04-16 121 int scsi_set_medium_removal(struct scsi_device *sdev, char state)
^1da177e4c3f415 Linus Torvalds 2005-04-16 122 {
^1da177e4c3f415 Linus Torvalds 2005-04-16 123 char scsi_cmd[MAX_COMMAND_SIZE];
^1da177e4c3f415 Linus Torvalds 2005-04-16 124 int ret;
^1da177e4c3f415 Linus Torvalds 2005-04-16 125
^1da177e4c3f415 Linus Torvalds 2005-04-16 126 if (!sdev->removable || !sdev->lockable)
^1da177e4c3f415 Linus Torvalds 2005-04-16 127 return 0;
^1da177e4c3f415 Linus Torvalds 2005-04-16 128
^1da177e4c3f415 Linus Torvalds 2005-04-16 129 scsi_cmd[0] = ALLOW_MEDIUM_REMOVAL;
^1da177e4c3f415 Linus Torvalds 2005-04-16 130 scsi_cmd[1] = 0;
^1da177e4c3f415 Linus Torvalds 2005-04-16 131 scsi_cmd[2] = 0;
^1da177e4c3f415 Linus Torvalds 2005-04-16 132 scsi_cmd[3] = 0;
^1da177e4c3f415 Linus Torvalds 2005-04-16 133 scsi_cmd[4] = state;
^1da177e4c3f415 Linus Torvalds 2005-04-16 134 scsi_cmd[5] = 0;
^1da177e4c3f415 Linus Torvalds 2005-04-16 135
^1da177e4c3f415 Linus Torvalds 2005-04-16 136 ret = ioctl_internal_command(sdev, scsi_cmd,
^1da177e4c3f415 Linus Torvalds 2005-04-16 137 IOCTL_NORMAL_TIMEOUT, NORMAL_RETRIES);
^1da177e4c3f415 Linus Torvalds 2005-04-16 138 if (ret == 0)
^1da177e4c3f415 Linus Torvalds 2005-04-16 139 sdev->locked = (state == SCSI_REMOVAL_PREVENT);
^1da177e4c3f415 Linus Torvalds 2005-04-16 140 return ret;
^1da177e4c3f415 Linus Torvalds 2005-04-16 141 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 142 EXPORT_SYMBOL(scsi_set_medium_removal);
^1da177e4c3f415 Linus Torvalds 2005-04-16 143
^1da177e4c3f415 Linus Torvalds 2005-04-16 144 /*
^1da177e4c3f415 Linus Torvalds 2005-04-16 145 * The scsi_ioctl_get_pci() function places into arg the value
^1da177e4c3f415 Linus Torvalds 2005-04-16 146 * pci_dev::slot_name (8 characters) for the PCI device (if any).
^1da177e4c3f415 Linus Torvalds 2005-04-16 147 * Returns: 0 on success
^1da177e4c3f415 Linus Torvalds 2005-04-16 148 * -ENXIO if there isn't a PCI device pointer
^1da177e4c3f415 Linus Torvalds 2005-04-16 149 * (could be because the SCSI driver hasn't been
^1da177e4c3f415 Linus Torvalds 2005-04-16 150 * updated yet, or because it isn't a SCSI
^1da177e4c3f415 Linus Torvalds 2005-04-16 151 * device)
^1da177e4c3f415 Linus Torvalds 2005-04-16 152 * any copy_to_user() error on failure there
^1da177e4c3f415 Linus Torvalds 2005-04-16 153 */
^1da177e4c3f415 Linus Torvalds 2005-04-16 154 static int scsi_ioctl_get_pci(struct scsi_device *sdev, void __user *arg)
^1da177e4c3f415 Linus Torvalds 2005-04-16 155 {
^1da177e4c3f415 Linus Torvalds 2005-04-16 156 struct device *dev = scsi_get_device(sdev->host);
71610f55fa4db63 Kay Sievers 2008-12-03 157 const char *name;
^1da177e4c3f415 Linus Torvalds 2005-04-16 158
^1da177e4c3f415 Linus Torvalds 2005-04-16 159 if (!dev)
^1da177e4c3f415 Linus Torvalds 2005-04-16 160 return -ENXIO;
71610f55fa4db63 Kay Sievers 2008-12-03 161
71610f55fa4db63 Kay Sievers 2008-12-03 162 name = dev_name(dev);
71610f55fa4db63 Kay Sievers 2008-12-03 163
71610f55fa4db63 Kay Sievers 2008-12-03 164 /* compatibility with old ioctl which only returned
71610f55fa4db63 Kay Sievers 2008-12-03 165 * 20 characters */
71610f55fa4db63 Kay Sievers 2008-12-03 166 return copy_to_user(arg, name, min(strlen(name), (size_t)20))
71610f55fa4db63 Kay Sievers 2008-12-03 167 ? -EFAULT: 0;
^1da177e4c3f415 Linus Torvalds 2005-04-16 168 }
^1da177e4c3f415 Linus Torvalds 2005-04-16 169
f2542a3be3277a6 Christoph Hellwig 2021-07-24 170 static int sg_get_version(int __user *p)
f2542a3be3277a6 Christoph Hellwig 2021-07-24 171 {
f2542a3be3277a6 Christoph Hellwig 2021-07-24 172 static const int sg_version_num = 30527;
f2542a3be3277a6 Christoph Hellwig 2021-07-24 @173 return put_user(sg_version_num, p);
f2542a3be3277a6 Christoph Hellwig 2021-07-24 174 }
f2542a3be3277a6 Christoph Hellwig 2021-07-24 175

:::::: The code at line 49 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx>
:::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://01.org/lkp