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: <202210241714.ww5p05Ml-lkp@intel.com>
Date:   Mon, 24 Oct 2022 17:17:19 +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] mm/mempolicy.c:1702:23: 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-20221024
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 drivers/net/ppp/ drivers/rtc/ drivers/spi/ drivers/staging/greybus/ drivers/usb/class/ drivers/usb/core/ drivers/usb/image/ drivers/watchdog/ mm/ net/rfkill/ 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 >>)
>> mm/mempolicy.c:1702:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   mm/mempolicy.c:1702:23: sparse:     expected int [noderef] __user *__ptr_clean
   mm/mempolicy.c:1702:23: sparse:     got int *
--
>> mm/migrate.c:1645:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   mm/migrate.c:1645:21: sparse:     expected int [noderef] __user *__ptr_clean
   mm/migrate.c:1645:21: sparse:     got int *
>> mm/migrate.c:1794:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void const [noderef] __user *[noderef] __user *__ptr_clean @@     got void const [noderef] __user ** @@
   mm/migrate.c:1794:21: sparse:     expected void const [noderef] __user *[noderef] __user *__ptr_clean
   mm/migrate.c:1794:21: sparse:     got void const [noderef] __user **
>> mm/migrate.c:1796:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int const [noderef] __user *__ptr_clean @@     got int const * @@
   mm/migrate.c:1796:21: sparse:     expected int const [noderef] __user *__ptr_clean
   mm/migrate.c:1796:21: sparse:     got int const *
>> mm/migrate.c:1930:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   mm/migrate.c:1930:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   mm/migrate.c:1930:21: sparse:     got unsigned int *
   mm/migrate.c:293:6: sparse: sparse: context imbalance in '__migration_entry_wait' - different lock contexts for basic block
   mm/migrate.c:773:9: sparse: sparse: context imbalance in '__buffer_migrate_folio' - different lock contexts for basic block
--
>> net/rfkill/core.c:1354:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/rfkill/core.c:1354:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/rfkill/core.c:1354:21: sparse:     got unsigned int *
--
>> drivers/rtc/rtc-abx80x.c:527:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/rtc/rtc-abx80x.c:527:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/rtc/rtc-abx80x.c:527:24: sparse:     got unsigned int *
--
>> sound/core/rawmidi.c:705:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   sound/core/rawmidi.c:705:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:705:13: sparse:     got unsigned int *
>> sound/core/rawmidi.c:707:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:707:13: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:707:13: sparse:     got int *
   sound/core/rawmidi.c:709:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   sound/core/rawmidi.c:709:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:709:13: sparse:     got unsigned int *
   sound/core/rawmidi.c:912:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:912:24: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:912:24: sparse:     got int *
   sound/core/rawmidi.c:918:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:918:21: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:918:21: sparse:     got int *
   sound/core/rawmidi.c:930:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   sound/core/rawmidi.c:930:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:930:21: sparse:     got unsigned int *
   sound/core/rawmidi.c:965:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:965:21: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:965:21: sparse:     got int *
   sound/core/rawmidi.c:980:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:980:21: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:980:21: sparse:     got int *
   sound/core/rawmidi.c:1014:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:1014:21: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:1014:21: sparse:     got int *
   sound/core/rawmidi.c:1028:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:1028:21: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:1028:21: sparse:     got int *
   sound/core/rawmidi.c:1036:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   sound/core/rawmidi.c:1036:21: sparse:     expected int [noderef] __user *__ptr_clean
   sound/core/rawmidi.c:1036:21: sparse:     got int *
   sound/core/rawmidi.c: note: in included file:
>> sound/core/rawmidi_compat.c:26:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   sound/core/rawmidi_compat.c:26:13: sparse:     expected signed int [noderef] __user *__ptr_clean
   sound/core/rawmidi_compat.c:26:13: sparse:     got signed int *
>> sound/core/rawmidi_compat.c:27:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   sound/core/rawmidi_compat.c:27:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   sound/core/rawmidi_compat.c:27:13: sparse:     got unsigned int *
   sound/core/rawmidi_compat.c:28:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   sound/core/rawmidi_compat.c:28:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   sound/core/rawmidi_compat.c:28:13: sparse:     got unsigned int *
   sound/core/rawmidi_compat.c:29:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   sound/core/rawmidi_compat.c:29:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   sound/core/rawmidi_compat.c:29:13: sparse:     got unsigned int *
   sound/core/rawmidi_compat.c:30:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   sound/core/rawmidi_compat.c:30:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   sound/core/rawmidi_compat.c:30:13: sparse:     got unsigned int *
   sound/core/rawmidi_compat.c:63:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   sound/core/rawmidi_compat.c:63:13: sparse:     expected signed int [noderef] __user *__ptr_clean
   sound/core/rawmidi_compat.c:63:13: sparse:     got signed int *
--
>> drivers/spi/spidev.c:380:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/spi/spidev.c:380:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:380:26: sparse:     got unsigned char *
>> drivers/spi/spidev.c:384:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/spi/spidev.c:384:26: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:384:26: sparse:     got unsigned int *
   drivers/spi/spidev.c:388:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/spi/spidev.c:388:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:388:26: sparse:     got unsigned char *
   drivers/spi/spidev.c:392:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/spi/spidev.c:392:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:392:26: sparse:     got unsigned char *
   drivers/spi/spidev.c:395:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/spi/spidev.c:395:26: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:395:26: sparse:     got unsigned int *
   drivers/spi/spidev.c:402:34: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/spi/spidev.c:402:34: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:402:34: sparse:     got unsigned char *
   drivers/spi/spidev.c:404:34: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/spi/spidev.c:404:34: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:404:34: sparse:     got unsigned int *
   drivers/spi/spidev.c:428:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/spi/spidev.c:428:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:428:26: sparse:     got unsigned char *
   drivers/spi/spidev.c:445:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/spi/spidev.c:445:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:445:26: sparse:     got unsigned char *
   drivers/spi/spidev.c:460:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/spi/spidev.c:460:26: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/spi/spidev.c:460:26: sparse:     got unsigned int *
--
>> drivers/net/ppp/pppox.c:84:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/pppox.c:84:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/pppox.c:84:21: sparse:     got int *
--
   drivers/net/ppp/pppoe.c: note: in included file (through include/linux/if_pppox.h):
   include/uapi/linux/if_pppox.h:153:29: sparse: sparse: array of flexible structures
>> drivers/net/ppp/pppoe.c:751:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/pppoe.c:751:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/pppoe.c:751:21: sparse:     got int *
   drivers/net/ppp/pppoe.c:765:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/pppoe.c:765:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/pppoe.c:765:21: sparse:     got int *
   drivers/net/ppp/pppoe.c:778:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/pppoe.c:778:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/pppoe.c:778:21: sparse:     got int *
--
>> drivers/net/ppp/ppp_generic.c:1041:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:1041:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:1041:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:1048:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:1048:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:1048:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:1055:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:1055:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:1055:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:1070:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:1070:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:1070:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:742:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:742:29: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:742:29: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:752:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:752:29: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:752:29: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:797:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:797:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:797:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:804:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:804:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:804:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:821:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:821:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:821:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:836:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:836:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:836:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:842:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:842:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:842:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:849:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:849:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:849:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:871:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:871:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:871:21: sparse:     got int *
   drivers/net/ppp/ppp_generic.c:939:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/ppp/ppp_generic.c:939:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/ppp/ppp_generic.c:939:21: sparse:     got int *
--
>> drivers/watchdog/pcwd_usb.c:375:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/watchdog/pcwd_usb.c:375:37: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_usb.c:375:37: sparse:     got char const *
>> drivers/watchdog/pcwd_usb.c:407:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_usb.c:407:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_usb.c:407:24: sparse:     got int *
   drivers/watchdog/pcwd_usb.c:416:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_usb.c:416:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_usb.c:416:24: sparse:     got int *
   drivers/watchdog/pcwd_usb.c:423:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_usb.c:423:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_usb.c:423:21: sparse:     got int *
   drivers/watchdog/pcwd_usb.c:447:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_usb.c:447:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_usb.c:447:21: sparse:     got int *
   drivers/watchdog/pcwd_usb.c:458:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_usb.c:458:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_usb.c:458:24: sparse:     got int *
   drivers/watchdog/pcwd_usb.c:467:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_usb.c:467:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_usb.c:467:24: sparse:     got int *
--
>> drivers/staging/greybus/fw-management.c:493:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/staging/greybus/fw-management.c:493:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/staging/greybus/fw-management.c:493:21: sparse:     got unsigned int *
--
>> drivers/usb/class/usbtmc.c:568:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/usb/class/usbtmc.c:568:22: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:568:22: sparse:     got unsigned char *
   drivers/usb/class/usbtmc.c:589:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/usb/class/usbtmc.c:589:22: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:589:22: sparse:     got unsigned char *
>> drivers/usb/class/usbtmc.c:614:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/class/usbtmc.c:614:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:614:13: sparse:     got unsigned int *
   drivers/usb/class/usbtmc.c:1063:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/class/usbtmc.c:1063:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:1063:13: sparse:     got unsigned int *
   drivers/usb/class/usbtmc.c:1274:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/class/usbtmc.c:1274:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:1274:13: sparse:     got unsigned int *
   drivers/usb/class/usbtmc.c:1295:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/class/usbtmc.c:1295:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:1295:13: sparse:     got unsigned int *
   drivers/usb/class/usbtmc.c:1989:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/class/usbtmc.c:1989:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:1989:16: sparse:     got unsigned int *
   drivers/usb/class/usbtmc.c:2000:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/class/usbtmc.c:2000:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:2000:13: sparse:     got unsigned int *
   drivers/usb/class/usbtmc.c:2136:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/class/usbtmc.c:2136:26: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:2136:26: sparse:     got unsigned int *
   drivers/usb/class/usbtmc.c:2141:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/usb/class/usbtmc.c:2141:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:2141:26: sparse:     got unsigned char *
   drivers/usb/class/usbtmc.c:2175:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/usb/class/usbtmc.c:2175:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:2175:26: sparse:     got unsigned char *
   drivers/usb/class/usbtmc.c:2180:26: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/usb/class/usbtmc.c:2180:26: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:2180:26: sparse:     got unsigned char *
   drivers/usb/class/usbtmc.c:2188:34: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/usb/class/usbtmc.c:2188:34: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/usb/class/usbtmc.c:2188:34: sparse:     got unsigned char *
--
>> drivers/usb/core/devio.c:950:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:950:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:950:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:951:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:951:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:951:13: sparse:     got unsigned int *
>> drivers/usb/core/devio.c:966:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   drivers/usb/core/devio.c:966:21: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:966:21: sparse:     got unsigned char *
   drivers/usb/core/devio.c:1389:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:1389:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:1389:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:1408:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:1408:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:1408:13: sparse:     got unsigned int *
>> drivers/usb/core/devio.c:1540:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/usb/core/devio.c:1540:13: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:1540:13: sparse:     got int *
   drivers/usb/core/devio.c:2043:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/usb/core/devio.c:2043:13: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2043:13: sparse:     got int *
   drivers/usb/core/devio.c:2045:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/usb/core/devio.c:2045:13: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2045:13: sparse:     got int *
   drivers/usb/core/devio.c:2047:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/usb/core/devio.c:2047:13: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2047:13: sparse:     got int *
   drivers/usb/core/devio.c:2052:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2052:29: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2052:29: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2055:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2055:29: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2055:29: sparse:     got unsigned int *
>> drivers/usb/core/devio.c:2061:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void [noderef] __user *[noderef] __user *__ptr_clean @@     got void [noderef] __user ** @@
   drivers/usb/core/devio.c:2061:13: sparse:     expected void [noderef] __user *[noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2061:13: sparse:     got void [noderef] __user **
   drivers/usb/core/devio.c:2133:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2133:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2133:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2145:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2145:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2145:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2146:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2146:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2146:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2147:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2147:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2147:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2148:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2148:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2148:13: sparse:     got unsigned int *
>> drivers/usb/core/devio.c:2214:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   drivers/usb/core/devio.c:2214:13: sparse:     expected signed int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2214:13: sparse:     got signed int *
   drivers/usb/core/devio.c:2216:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   drivers/usb/core/devio.c:2216:13: sparse:     expected signed int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2216:13: sparse:     got signed int *
   drivers/usb/core/devio.c:2218:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   drivers/usb/core/devio.c:2218:13: sparse:     expected signed int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2218:13: sparse:     got signed int *
   drivers/usb/core/devio.c:2223:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2223:29: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2223:29: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2226:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2226:29: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2226:29: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2232:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2232:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2232:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2288:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2288:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2288:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2298:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2298:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2298:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2414:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2414:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2414:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2427:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2427:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2427:13: sparse:     got unsigned int *
   drivers/usb/core/devio.c:2445:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/usb/core/devio.c:2445:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/usb/core/devio.c:2445:13: sparse:     got unsigned int *
--
>> drivers/usb/image/mdc800.c:806:20: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/usb/image/mdc800.c:806:20: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/usb/image/mdc800.c:806:20: sparse:     got char const *

vim +1702 mm/mempolicy.c

b6e9b0babb7a02 Dominik Brodowski  2018-03-17  1679  
39743889aaf767 Christoph Lameter  2006-01-08  1680  
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1681  /* Retrieve NUMA policy */
af03c4acb728dd Dominik Brodowski  2018-03-17  1682  static int kernel_get_mempolicy(int __user *policy,
af03c4acb728dd Dominik Brodowski  2018-03-17  1683  				unsigned long __user *nmask,
af03c4acb728dd Dominik Brodowski  2018-03-17  1684  				unsigned long maxnode,
af03c4acb728dd Dominik Brodowski  2018-03-17  1685  				unsigned long addr,
af03c4acb728dd Dominik Brodowski  2018-03-17  1686  				unsigned long flags)
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1687  {
dbcb0f19c877df Adrian Bunk        2007-10-16  1688  	int err;
3f649ab728cda8 Kees Cook          2020-06-03  1689  	int pval;
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1690  	nodemask_t nodes;
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1691  
050c17f239fd53 Ralph Campbell     2019-02-20  1692  	if (nmask != NULL && maxnode < nr_node_ids)
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1693  		return -EINVAL;
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1694  
526a694aa8764d Kirill A. Shutemov 2022-06-08  1695  	addr = untagged_addr(current->mm, addr);
4605f057aace92 Wenchao Hao        2020-08-11  1696  
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1697  	err = do_get_mempolicy(&pval, &nodes, addr, flags);
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1698  
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1699  	if (err)
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1700  		return err;
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1701  
8bccd85ffbaf8f Christoph Lameter  2005-10-29 @1702  	if (policy && put_user(pval, policy))
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1703  		return -EFAULT;
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1704  
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1705  	if (nmask)
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1706  		err = copy_nodes_to_user(nmask, maxnode, &nodes);
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1707  
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1708  	return err;
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1709  }
8bccd85ffbaf8f Christoph Lameter  2005-10-29  1710  

:::::: The code at line 1702 was first introduced by commit
:::::: 8bccd85ffbaf8ff1448d1235fa6594e207695531 [PATCH] Implement sys_* do_* layering in the memory policy layer.

:::::: TO: Christoph Lameter <clameter@...r.sgi.com>
:::::: CC: Linus Torvalds <torvalds@...osdl.org>

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

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ