lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202210201419.KZcaev3V-lkp@intel.com>
Date:   Thu, 20 Oct 2022 14:08:16 +0800
From:   kernel test robot <lkp@...el.com>
To:     "Kirill A. Shutemov" <kirill.shutemov@...ux.intel.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [kas:lam 5/18] kernel/profile.c:412:21: sparse: sparse: incorrect
 type in assignment (different address spaces)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git lam
head:   01819ca3dcb30fc9114025c8c5da8bcee0cabcee
commit: bb9d0488e7c6bfff85581168d4f49f48cd11ac36 [5/18] x86/uaccess: Provide untagged_addr() and remove tags before address check
config: x86_64-randconfig-s021
compiler: gcc-11 (Debian 11.3.0-8) 11.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.4-39-gce1a6720-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git/commit/?id=bb9d0488e7c6bfff85581168d4f49f48cd11ac36
        git remote add kas https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git
        git fetch --no-tags kas lam
        git checkout bb9d0488e7c6bfff85581168d4f49f48cd11ac36
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        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/ drivers/acpi/ drivers/block/ drivers/fpga/ drivers/infiniband/core/ drivers/platform/x86/ drivers/usb/gadget/function/ drivers/vdpa/vdpa_user/ fs/cifs/ kernel/ net/bluetooth/ net/core/ net/l2tp/ net/llc/ net/nfc/ net/sctp/ net/smc/ net/tipc/ net/tls/ net/vmw_vsock/ sound/core/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>

sparse warnings: (new ones prefixed by >>)
>> kernel/profile.c:412:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char [noderef] __user *__ptr_clean @@     got char * @@
   kernel/profile.c:412:21: sparse:     expected char [noderef] __user *__ptr_clean
   kernel/profile.c:412:21: sparse:     got char *
--
>> fs/cifs/dfs_cache.c:308:14: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   fs/cifs/dfs_cache.c:308:14: sparse:     expected char const [noderef] __user *__ptr_clean
   fs/cifs/dfs_cache.c:308:14: sparse:     got char const *
--
>> sound/core/compress_offload.c:977:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/compress_offload.c:977:26: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/compress_offload.c:977:26: sparse:     got int *
--
>> drivers/acpi/ec_sys.c:53:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char [noderef] __user *__ptr_clean @@     got char * @@
   drivers/acpi/ec_sys.c:53:21: sparse:     expected char [noderef] __user *__ptr_clean
   drivers/acpi/ec_sys.c:53:21: sparse:     got char *
>> drivers/acpi/ec_sys.c:87:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/acpi/ec_sys.c:87:21: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/acpi/ec_sys.c:87:21: sparse:     got char const *
--
>> net/bluetooth/af_bluetooth.c:512:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/bluetooth/af_bluetooth.c:512:23: sparse:     expected int [noderef] __user *__ptr_clean
   net/bluetooth/af_bluetooth.c:512:23: sparse:     got int *
   net/bluetooth/af_bluetooth.c:523:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/bluetooth/af_bluetooth.c:523:23: sparse:     expected int [noderef] __user *__ptr_clean
   net/bluetooth/af_bluetooth.c:523:23: sparse:     got int *
   net/bluetooth/af_bluetooth.c:178:25: sparse: sparse: context imbalance in 'bt_accept_enqueue' - different lock contexts for basic block
--
>> net/bluetooth/hci_core.c:846:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/bluetooth/hci_core.c:846:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/bluetooth/hci_core.c:846:13: sparse:     got unsigned short *
--
>> net/bluetooth/hci_sock.c:1973:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/bluetooth/hci_sock.c:1973:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/bluetooth/hci_sock.c:1973:13: sparse:     got int *
>> net/bluetooth/hci_sock.c:1990:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char [noderef] __user *__ptr_clean @@     got char * @@
   net/bluetooth/hci_sock.c:1990:21: sparse:     expected char [noderef] __user *__ptr_clean
   net/bluetooth/hci_sock.c:1990:21: sparse:     got char *
   net/bluetooth/hci_sock.c:2000:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char [noderef] __user *__ptr_clean @@     got char * @@
   net/bluetooth/hci_sock.c:2000:21: sparse:     expected char [noderef] __user *__ptr_clean
   net/bluetooth/hci_sock.c:2000:21: sparse:     got char *
>> net/bluetooth/hci_sock.c:2050:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/bluetooth/hci_sock.c:2050:21: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/bluetooth/hci_sock.c:2050:21: sparse:     got unsigned short *
--
>> net/bluetooth/l2cap_sock.c:464:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/bluetooth/l2cap_sock.c:464:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:464:13: sparse:     got int *
>> net/bluetooth/l2cap_sock.c:539:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/bluetooth/l2cap_sock.c:539:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:539:21: sparse:     got unsigned int *
   net/bluetooth/l2cap_sock.c:589:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/bluetooth/l2cap_sock.c:589:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:589:13: sparse:     got int *
   net/bluetooth/l2cap_sock.c:625:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/bluetooth/l2cap_sock.c:625:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:625:21: sparse:     got unsigned int *
   net/bluetooth/l2cap_sock.c:632:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/bluetooth/l2cap_sock.c:632:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:632:21: sparse:     got unsigned int *
   net/bluetooth/l2cap_sock.c:654:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/bluetooth/l2cap_sock.c:654:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:654:21: sparse:     got unsigned int *
>> net/bluetooth/l2cap_sock.c:669:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/bluetooth/l2cap_sock.c:669:21: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:669:21: sparse:     got unsigned short *
   net/bluetooth/l2cap_sock.c:679:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/bluetooth/l2cap_sock.c:679:21: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:679:21: sparse:     got unsigned short *
   net/bluetooth/l2cap_sock.c:691:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/bluetooth/l2cap_sock.c:691:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:691:21: sparse:     got unsigned int *
>> net/bluetooth/l2cap_sock.c:712:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   net/bluetooth/l2cap_sock.c:712:21: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   net/bluetooth/l2cap_sock.c:712:21: sparse:     got unsigned char *
--
>> net/core/pktgen.c:756:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   net/core/pktgen.c:756:21: sparse:     expected char const [noderef] __user *__ptr_clean
   net/core/pktgen.c:756:21: sparse:     got char const *
   net/core/pktgen.c:774:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   net/core/pktgen.c:774:21: sparse:     expected char const [noderef] __user *__ptr_clean
   net/core/pktgen.c:774:21: sparse:     got char const *
   net/core/pktgen.c:800:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   net/core/pktgen.c:800:21: sparse:     expected char const [noderef] __user *__ptr_clean
   net/core/pktgen.c:800:21: sparse:     got char const *
   net/core/pktgen.c:817:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   net/core/pktgen.c:817:21: sparse:     expected char const [noderef] __user *__ptr_clean
   net/core/pktgen.c:817:21: sparse:     got char const *
   net/core/pktgen.c:857:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   net/core/pktgen.c:857:21: sparse:     expected char const [noderef] __user *__ptr_clean
   net/core/pktgen.c:857:21: sparse:     got char const *
   net/core/pktgen.c:877:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   net/core/pktgen.c:877:21: sparse:     expected char const [noderef] __user *__ptr_clean
   net/core/pktgen.c:877:21: sparse:     got char const *
   net/core/pktgen.c:907:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   net/core/pktgen.c:907:21: sparse:     expected char const [noderef] __user *__ptr_clean
   net/core/pktgen.c:907:21: sparse:     got char const *
--
>> net/l2tp/l2tp_ip.c:585:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/l2tp/l2tp_ip.c:585:16: sparse:     expected int [noderef] __user *__ptr_clean
   net/l2tp/l2tp_ip.c:585:16: sparse:     got int *
--
>> drivers/block/xen-blkfront.c:521:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char [noderef] __user *__ptr_clean @@     got char * @@
   drivers/block/xen-blkfront.c:521:29: sparse:     expected char [noderef] __user *__ptr_clean
   drivers/block/xen-blkfront.c:521:29: sparse:     got char *
--
>> net/llc/af_llc.c:1171:14: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/llc/af_llc.c:1171:14: sparse:     expected int [noderef] __user *__ptr_clean
   net/llc/af_llc.c:1171:14: sparse:     got int *
   net/llc/af_llc.c:1202:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/llc/af_llc.c:1202:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/llc/af_llc.c:1202:13: sparse:     got int *
--
>> drivers/fpga/dfl-fme-main.c:143:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/fpga/dfl-fme-main.c:143:13: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/fpga/dfl-fme-main.c:143:13: sparse:     got int *
   drivers/fpga/dfl-fme-main.c:155:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/fpga/dfl-fme-main.c:155:13: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/fpga/dfl-fme-main.c:155:13: sparse:     got int *
--
>> net/nfc/llcp_sock.c:319:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/nfc/llcp_sock.c:319:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/nfc/llcp_sock.c:319:13: sparse:     got int *
>> net/nfc/llcp_sock.c:333:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/nfc/llcp_sock.c:333:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/nfc/llcp_sock.c:333:21: sparse:     got unsigned int *
   net/nfc/llcp_sock.c:342:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/nfc/llcp_sock.c:342:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/nfc/llcp_sock.c:342:21: sparse:     got unsigned int *
   net/nfc/llcp_sock.c:351:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/nfc/llcp_sock.c:351:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/nfc/llcp_sock.c:351:21: sparse:     got unsigned int *
   net/nfc/llcp_sock.c:357:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/nfc/llcp_sock.c:357:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/nfc/llcp_sock.c:357:21: sparse:     got unsigned int *
   net/nfc/llcp_sock.c:363:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/nfc/llcp_sock.c:363:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/nfc/llcp_sock.c:363:21: sparse:     got unsigned int *
   net/nfc/llcp_sock.c:375:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/nfc/llcp_sock.c:375:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/nfc/llcp_sock.c:375:13: sparse:     got int *
--
   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:1424:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:1424:21: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:1424:21: sparse:     got int *
   net/sctp/socket.c:4919:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:4919:22: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:4919:22: sparse:     got int *
   net/sctp/socket.c:5443:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5443:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5443:13: sparse:     got int *
   net/sctp/socket.c:5511:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5511:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5511:13: sparse:     got int *
   net/sctp/socket.c:5542:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5542:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5542:13: sparse:     got int *
   net/sctp/socket.c:5565:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5565:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5565:13: sparse:     got int *
   net/sctp/socket.c:5597:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5597:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5597:13: sparse:     got int *
   net/sctp/socket.c:5599:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5599:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5599:13: sparse:     got int *
   net/sctp/socket.c:5708:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5708:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5708:13: sparse:     got int *
   net/sctp/socket.c:5743:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5743:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5743:13: sparse:     got int *
   net/sctp/socket.c:5993:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:5993:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:5993:13: sparse:     got int *
   net/sctp/socket.c:6091:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6091:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6091:13: sparse:     got int *
   net/sctp/socket.c:6113:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6113:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6113:13: sparse:     got int *
>> net/sctp/socket.c:6163:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/sctp/socket.c:6163:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6163:13: sparse:     got unsigned int *
   net/sctp/socket.c:6166:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6166:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6166:13: sparse:     got int *
   net/sctp/socket.c:6305:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/sctp/socket.c:6305:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6305:13: sparse:     got unsigned int *
   net/sctp/socket.c:6312:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6312:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6312:13: sparse:     got int *
   net/sctp/socket.c:6353:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6353:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6353:13: sparse:     got int *
   net/sctp/socket.c:6379:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6379:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6379:13: sparse:     got int *
   net/sctp/socket.c:6441:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6441:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6441:13: sparse:     got int *
   net/sctp/socket.c:6485:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6485:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6485:13: sparse:     got int *
   net/sctp/socket.c:6513:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6513:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6513:13: sparse:     got int *
   net/sctp/socket.c:6566:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6566:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6566:13: sparse:     got int *
   net/sctp/socket.c:6636:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6636:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6636:13: sparse:     got int *
   net/sctp/socket.c:6666:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6666:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6666:13: sparse:     got int *
   net/sctp/socket.c:6700:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6700:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6700:13: sparse:     got int *
   net/sctp/socket.c:6765:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6765:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6765:13: sparse:     got int *
   net/sctp/socket.c:6793:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6793:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6793:13: sparse:     got int *
   net/sctp/socket.c:6817:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6817:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6817:13: sparse:     got int *
   net/sctp/socket.c:6892:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6892:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6892:13: sparse:     got int *
   net/sctp/socket.c:6894:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/sctp/socket.c:6894:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6894:13: sparse:     got unsigned int *
   net/sctp/socket.c:6933:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6933:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6933:13: sparse:     got int *
   net/sctp/socket.c:6978:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:6978:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6978:13: sparse:     got int *
   net/sctp/socket.c:6980:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/sctp/socket.c:6980:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/sctp/socket.c:6980:13: sparse:     got unsigned int *
   net/sctp/socket.c:7028:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7028:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7028:13: sparse:     got int *
   net/sctp/socket.c:7030:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/sctp/socket.c:7030:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7030:13: sparse:     got unsigned int *
   net/sctp/socket.c:7060:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7060:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7060:13: sparse:     got int *
   net/sctp/socket.c:7083:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7083:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7083:13: sparse:     got int *
   net/sctp/socket.c:7130:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7130:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7130:13: sparse:     got int *
   net/sctp/socket.c:7193:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7193:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7193:13: sparse:     got int *
   net/sctp/socket.c:7252:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7252:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7252:13: sparse:     got int *
   net/sctp/socket.c:7275:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7275:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7275:13: sparse:     got int *
   net/sctp/socket.c:7295:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7295:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7295:13: sparse:     got int *
   net/sctp/socket.c:7330:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7330:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7330:13: sparse:     got int *
   net/sctp/socket.c:7376:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7376:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7376:13: sparse:     got int *
   net/sctp/socket.c:7431:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7431:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/sctp/socket.c:7431:13: sparse:     got int *
   net/sctp/socket.c:7500:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/sctp/socket.c:7500:13: sparse:     expected int [noderef] __user *__ptr_clean
--
>> net/smc/af_smc.c:2862:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/smc/af_smc.c:2862:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/smc/af_smc.c:2862:13: sparse:     got int *
   net/smc/af_smc.c:2878:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/smc/af_smc.c:2878:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/smc/af_smc.c:2878:13: sparse:     got int *
   net/smc/af_smc.c:3110:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/smc/af_smc.c:3110:16: sparse:     expected int [noderef] __user *__ptr_clean
   net/smc/af_smc.c:3110:16: sparse:     got int *
--
>> net/tipc/socket.c:3243:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/tipc/socket.c:3243:24: sparse:     expected int [noderef] __user *__ptr_clean
   net/tipc/socket.c:3243:24: sparse:     got int *
   net/tipc/socket.c:3246:15: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/tipc/socket.c:3246:15: sparse:     expected int [noderef] __user *__ptr_clean
   net/tipc/socket.c:3246:15: sparse:     got int *
   net/tipc/socket.c:3296:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/tipc/socket.c:3296:16: sparse:     expected int [noderef] __user *__ptr_clean
   net/tipc/socket.c:3296:16: sparse:     got int *
--
>> net/tls/tls_main.c:363:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/tls/tls_main.c:363:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/tls/tls_main.c:363:13: sparse:     got int *
   net/tls/tls_main.c:590:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/tls/tls_main.c:590:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/tls/tls_main.c:590:13: sparse:     got int *
   net/tls/tls_main.c:612:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/tls/tls_main.c:612:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/tls/tls_main.c:612:13: sparse:     got int *
   net/tls/tls_main.c:625:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/tls/tls_main.c:625:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/tls/tls_main.c:625:13: sparse:     got int *
--
>> net/vmw_vsock/af_vsock.c:1700:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/vmw_vsock/af_vsock.c:1700:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/vmw_vsock/af_vsock.c:1700:13: sparse:     got int *
   net/vmw_vsock/af_vsock.c:1735:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/vmw_vsock/af_vsock.c:1735:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/vmw_vsock/af_vsock.c:1735:13: sparse:     got int *
>> net/vmw_vsock/af_vsock.c:2284:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/vmw_vsock/af_vsock.c:2284:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/vmw_vsock/af_vsock.c:2284:21: sparse:     got unsigned int *
--
>> drivers/platform/x86/wmi.c:897:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long long [noderef] __user *__ptr_clean @@     got unsigned long long * @@
   drivers/platform/x86/wmi.c:897:13: sparse:     expected unsigned long long [noderef] __user *__ptr_clean
   drivers/platform/x86/wmi.c:897:13: sparse:     got unsigned long long *
--
   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 assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/infiniband/core/user_mad.c:749:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/infiniband/core/user_mad.c:749:13: sparse:     got unsigned int *
   drivers/infiniband/core/user_mad.c:815:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/infiniband/core/user_mad.c:815:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/infiniband/core/user_mad.c:815:21: sparse:     got unsigned int *
   drivers/infiniband/core/user_mad.c:863:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/infiniband/core/user_mad.c:863:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/infiniband/core/user_mad.c:863:13: sparse:     got unsigned int *
   drivers/infiniband/core/user_mad.c:896:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/infiniband/core/user_mad.c:896:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/infiniband/core/user_mad.c:896:13: sparse:     got unsigned int *
--
>> drivers/infiniband/core/uverbs_main.c:632:31: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long long const [noderef] __user *__ptr_clean @@     got unsigned long long const * @@
   drivers/infiniband/core/uverbs_main.c:632:31: sparse:     expected unsigned long long const [noderef] __user *__ptr_clean
   drivers/infiniband/core/uverbs_main.c:632:31: sparse:     got unsigned long long const *
--
>> drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   drivers/infiniband/core/uverbs_ioctl.c:157:13: sparse:     got unsigned short *
>> drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long long [noderef] __user *__ptr_clean @@     got unsigned long long * @@
   drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse:     expected unsigned long long [noderef] __user *__ptr_clean
   drivers/infiniband/core/uverbs_ioctl.c:334:29: sparse:     got unsigned long long *
   drivers/infiniband/core/uverbs_ioctl.c:431:17: sparse: sparse: incorrect type in assignment (different modifiers) @@     expected int ( *handler )( ... ) @@     got int ( [noderef] * )( ... ) @@
   drivers/infiniband/core/uverbs_ioctl.c:431:17: sparse:     expected int ( *handler )( ... )
   drivers/infiniband/core/uverbs_ioctl.c:431:17: sparse:     got int ( [noderef] * )( ... )
--
>> drivers/vdpa/vdpa_user/vduse_dev.c:1088:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long long [noderef] __user *__ptr_clean @@     got unsigned long long * @@
   drivers/vdpa/vdpa_user/vduse_dev.c:1088:23: sparse:     expected unsigned long long [noderef] __user *__ptr_clean
   drivers/vdpa/vdpa_user/vduse_dev.c:1088:23: sparse:     got unsigned long long *
>> drivers/vdpa/vdpa_user/vduse_dev.c:1193:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/vdpa/vdpa_user/vduse_dev.c:1193:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/vdpa/vdpa_user/vduse_dev.c:1193:21: sparse:     got unsigned int *
   drivers/vdpa/vdpa_user/vduse_dev.c:1567:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long long [noderef] __user *__ptr_clean @@     got unsigned long long * @@
   drivers/vdpa/vdpa_user/vduse_dev.c:1567:23: sparse:     expected unsigned long long [noderef] __user *__ptr_clean
   drivers/vdpa/vdpa_user/vduse_dev.c:1567:23: sparse:     got unsigned long long *
   drivers/vdpa/vdpa_user/vduse_dev.c:1573:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long long [noderef] __user *__ptr_clean @@     got unsigned long long * @@
   drivers/vdpa/vdpa_user/vduse_dev.c:1573:21: sparse:     expected unsigned long long [noderef] __user *__ptr_clean
   drivers/vdpa/vdpa_user/vduse_dev.c:1573:21: sparse:     got unsigned long long *
--
>> arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse:     expected int [noderef] __user *__ptr_clean
   arch/x86/kernel/cpu/mce/dev-mcelog.c:265:24: sparse:     got int *
   arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse:     expected int [noderef] __user *__ptr_clean
   arch/x86/kernel/cpu/mce/dev-mcelog.c:267:24: sparse:     got int *
   arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse:     expected int [noderef] __user *__ptr_clean
   arch/x86/kernel/cpu/mce/dev-mcelog.c:275:24: sparse:     got int *
--
>> drivers/usb/gadget/function/rndis.c:1138:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/usb/gadget/function/rndis.c:1138:21: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/usb/gadget/function/rndis.c:1138:21: sparse:     got char const *

vim +412 kernel/profile.c

^1da177e4c3f41 Linus Torvalds 2005-04-16  389  
^1da177e4c3f41 Linus Torvalds 2005-04-16  390  /*
^1da177e4c3f41 Linus Torvalds 2005-04-16  391   * This function accesses profiling information. The returned data is
^1da177e4c3f41 Linus Torvalds 2005-04-16  392   * binary: the sampling step and the actual contents of the profile
^1da177e4c3f41 Linus Torvalds 2005-04-16  393   * buffer. Use of the program readprofile is recommended in order to
^1da177e4c3f41 Linus Torvalds 2005-04-16  394   * get meaningful info out of these data.
^1da177e4c3f41 Linus Torvalds 2005-04-16  395   */
^1da177e4c3f41 Linus Torvalds 2005-04-16  396  static ssize_t
^1da177e4c3f41 Linus Torvalds 2005-04-16  397  read_profile(struct file *file, char __user *buf, size_t count, loff_t *ppos)
^1da177e4c3f41 Linus Torvalds 2005-04-16  398  {
^1da177e4c3f41 Linus Torvalds 2005-04-16  399  	unsigned long p = *ppos;
^1da177e4c3f41 Linus Torvalds 2005-04-16  400  	ssize_t read;
^1da177e4c3f41 Linus Torvalds 2005-04-16  401  	char *pnt;
2d186afd04d669 Pavel Skripkin 2021-09-07  402  	unsigned long sample_step = 1UL << prof_shift;
^1da177e4c3f41 Linus Torvalds 2005-04-16  403  
^1da177e4c3f41 Linus Torvalds 2005-04-16  404  	profile_flip_buffers();
^1da177e4c3f41 Linus Torvalds 2005-04-16  405  	if (p >= (prof_len+1)*sizeof(unsigned int))
^1da177e4c3f41 Linus Torvalds 2005-04-16  406  		return 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16  407  	if (count > (prof_len+1)*sizeof(unsigned int) - p)
^1da177e4c3f41 Linus Torvalds 2005-04-16  408  		count = (prof_len+1)*sizeof(unsigned int) - p;
^1da177e4c3f41 Linus Torvalds 2005-04-16  409  	read = 0;
^1da177e4c3f41 Linus Torvalds 2005-04-16  410  
^1da177e4c3f41 Linus Torvalds 2005-04-16  411  	while (p < sizeof(unsigned int) && count > 0) {
064b022c7adb2d Heiko Carstens 2006-12-06 @412  		if (put_user(*((char *)(&sample_step)+p), buf))
064b022c7adb2d Heiko Carstens 2006-12-06  413  			return -EFAULT;
^1da177e4c3f41 Linus Torvalds 2005-04-16  414  		buf++; p++; count--; read++;
^1da177e4c3f41 Linus Torvalds 2005-04-16  415  	}
^1da177e4c3f41 Linus Torvalds 2005-04-16  416  	pnt = (char *)prof_buffer + p - sizeof(atomic_t);
^1da177e4c3f41 Linus Torvalds 2005-04-16  417  	if (copy_to_user(buf, (void *)pnt, count))
^1da177e4c3f41 Linus Torvalds 2005-04-16  418  		return -EFAULT;
^1da177e4c3f41 Linus Torvalds 2005-04-16  419  	read += count;
^1da177e4c3f41 Linus Torvalds 2005-04-16  420  	*ppos += read;
^1da177e4c3f41 Linus Torvalds 2005-04-16  421  	return read;
^1da177e4c3f41 Linus Torvalds 2005-04-16  422  }
^1da177e4c3f41 Linus Torvalds 2005-04-16  423  

:::::: The code at line 412 was first introduced by commit
:::::: 064b022c7adb2d853378078a9dc141f8288d1c73 [PATCH] profile: fix uaccess handling

:::::: TO: Heiko Carstens <heiko.carstens@...ibm.com>
:::::: CC: Linus Torvalds <torvalds@...dy.osdl.org>

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

View attachment "config" of type "text/plain" (169128 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ