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: <202210241908.CWUlJAJ8-lkp@intel.com>
Date:   Mon, 24 Oct 2022 19:08:28 +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] drivers/video/fbdev/sis/sis_main.c:1718:20: 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-s022-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/cxl/core/ drivers/hid/ drivers/media/rc/ drivers/misc/vmw_vmci/ drivers/net/slip/ drivers/net/wwan/ drivers/rtc/ drivers/tty/ drivers/video/fbdev/core/ drivers/video/fbdev/matrox/ drivers/video/fbdev/sis/ drivers/video/fbdev/via/ drivers/watchdog/ net/appletalk/ net/can/ net/ipv4/ net/ipv6/ net/netfilter/ net/phonet/ net/qrtr/ net/x25/

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 >>)
>> drivers/video/fbdev/sis/sis_main.c:1718:20: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1718:20: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1718:20: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1737:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1737:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1737:24: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1800:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1800:32: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1800:32: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1802:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1802:32: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1802:32: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1811:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1811:32: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1811:32: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1813:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1813:32: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1813:32: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1821:20: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1821:20: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1821:20: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1828:20: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1828:20: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1828:20: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1836:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1836:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1836:24: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:1853:20: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/sis/sis_main.c:1853:20: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/sis/sis_main.c:1853:20: sparse:     got unsigned int *
   drivers/video/fbdev/sis/sis_main.c:5438:32: sparse: sparse: cast to restricted __le32
   drivers/video/fbdev/sis/sis_main.c:5441:32: sparse: sparse: cast to restricted __le32
   drivers/video/fbdev/sis/sis_main.c:5470:40: sparse: sparse: cast to restricted __le32
   drivers/video/fbdev/sis/sis_main.c:5502:16: sparse: sparse: cast to restricted __le16
--
>> drivers/video/fbdev/via/viafbdev.c:409:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/via/viafbdev.c:409:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/via/viafbdev.c:409:24: sparse:     got unsigned int *
   drivers/video/fbdev/via/viafbdev.c:413:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/via/viafbdev.c:413:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/via/viafbdev.c:413:24: sparse:     got unsigned int *
   drivers/video/fbdev/via/viafbdev.c:553:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/via/viafbdev.c:553:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/via/viafbdev.c:553:21: sparse:     got unsigned int *
   drivers/video/fbdev/via/viafbdev.c:559:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/via/viafbdev.c:559:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/via/viafbdev.c:559:21: sparse:     got unsigned int *
   drivers/video/fbdev/via/viafbdev.c:567:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/via/viafbdev.c:567:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/via/viafbdev.c:567:21: sparse:     got unsigned int *
   drivers/video/fbdev/via/viafbdev.c:600:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/via/viafbdev.c:600:21: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/via/viafbdev.c:600:21: sparse:     got unsigned int *
--
>> drivers/hid/uhid.c:425:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/hid/uhid.c:425:21: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/hid/uhid.c:425:21: sparse:     got char const *
--
   net/appletalk/ddp.c:100:33: sparse: sparse: restricted __be16 degrades to integer
   net/appletalk/ddp.c:113:33: sparse: sparse: restricted __be16 degrades to integer
   net/appletalk/ddp.c:409:47: sparse: sparse: restricted __be16 degrades to integer
>> net/appletalk/ddp.c:1810:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/appletalk/ddp.c:1810:22: sparse:     expected int [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1810:22: sparse:     got int *
   net/appletalk/ddp.c:1823:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/appletalk/ddp.c:1823:22: sparse:     expected int [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1823:22: sparse:     got int *
>> net/appletalk/ddp.c:1860:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/appletalk/ddp.c:1860:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1860:13: sparse:     got unsigned short *
>> net/appletalk/ddp.c:1861:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected short [noderef] __user *__ptr_clean @@     got short * @@
   net/appletalk/ddp.c:1861:13: sparse:     expected short [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1861:13: sparse:     got short *
>> net/appletalk/ddp.c:1862:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/appletalk/ddp.c:1862:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1862:13: sparse:     got unsigned int *
   net/appletalk/ddp.c:1863:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/appletalk/ddp.c:1863:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1863:13: sparse:     got unsigned int *
   net/appletalk/ddp.c:1864:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/appletalk/ddp.c:1864:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1864:13: sparse:     got unsigned short *
   net/appletalk/ddp.c:1865:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/appletalk/ddp.c:1865:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/appletalk/ddp.c:1865:13: sparse:     got unsigned int *
--
>> net/can/isotp.c:1456:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/can/isotp.c:1456:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/can/isotp.c:1456:13: sparse:     got int *
   net/can/isotp.c:1491:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/can/isotp.c:1491:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/can/isotp.c:1491:13: sparse:     got int *
--
>> drivers/rtc/rtc-pcf8563.c:288:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/rtc/rtc-pcf8563.c:288:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/rtc/rtc-pcf8563.c:288:24: sparse:     got unsigned int *
--
>> drivers/rtc/rtc-rs5c372.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-rs5c372.c:527:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/rtc/rtc-rs5c372.c:527:24: sparse:     got unsigned int *
--
>> drivers/rtc/rtc-rv3028.c:596:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/rtc/rtc-rv3028.c:596:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/rtc/rtc-rv3028.c:596:24: sparse:     got unsigned int *
--
>> drivers/rtc/dev.c:182:31: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/rtc/dev.c:182:31: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/rtc/dev.c:182:31: sparse:     got unsigned int *
>> drivers/rtc/dev.c:185:31: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long [noderef] __user *__ptr_clean @@     got unsigned long * @@
   drivers/rtc/dev.c:185:31: sparse:     expected unsigned long [noderef] __user *__ptr_clean
   drivers/rtc/dev.c:185:31: sparse:     got unsigned long *
   drivers/rtc/dev.c:367:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned long [noderef] __user *__ptr_clean @@     got unsigned long * @@
   drivers/rtc/dev.c:367:23: sparse:     expected unsigned long [noderef] __user *__ptr_clean
   drivers/rtc/dev.c:367:23: sparse:     got unsigned long *
   drivers/rtc/dev.c:480:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/rtc/dev.c:480:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/rtc/dev.c:480:24: sparse:     got unsigned int *
--
>> net/ipv4/ip_sockglue.c:1793:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/ipv4/ip_sockglue.c:1793:21: sparse:     expected int [noderef] __user *__ptr_clean
   net/ipv4/ip_sockglue.c:1793:21: sparse:     got int *
   net/ipv4/ip_sockglue.c:1798:31: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/ipv4/ip_sockglue.c:1798:31: sparse:     expected int [noderef] __user *__ptr_clean
   net/ipv4/ip_sockglue.c:1798:31: sparse:     got int *
--
>> drivers/tty/n_gsm.c:3116:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/tty/n_gsm.c:3116:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/tty/n_gsm.c:3116:24: sparse:     got unsigned int *
   drivers/tty/n_gsm.c:3281:29: sparse: sparse: restricted __be16 degrades to integer
--
>> drivers/cxl/core/mbox.c:440:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/cxl/core/mbox.c:440:13: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/cxl/core/mbox.c:440:13: sparse:     got unsigned int *
   drivers/cxl/core/mbox.c:445:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/cxl/core/mbox.c:445:24: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/cxl/core/mbox.c:445:24: sparse:     got unsigned int *
--
>> drivers/watchdog/nv_tco.c:197:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/watchdog/nv_tco.c:197:37: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/watchdog/nv_tco.c:197:37: sparse:     got char const *
>> drivers/watchdog/nv_tco.c:230:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/nv_tco.c:230:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/nv_tco.c:230:24: sparse:     got int *
   drivers/watchdog/nv_tco.c:232:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/nv_tco.c:232:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/nv_tco.c:232:21: sparse:     got int *
   drivers/watchdog/nv_tco.c:248:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/nv_tco.c:248:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/nv_tco.c:248:21: sparse:     got int *
   drivers/watchdog/nv_tco.c:255:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/nv_tco.c:255:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/nv_tco.c:255:24: sparse:     got int *
--
>> drivers/watchdog/pcwd_pci.c:450:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/watchdog/pcwd_pci.c:450:37: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:450:37: sparse:     got char const *
>> drivers/watchdog/pcwd_pci.c:486:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_pci.c:486:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:486:24: sparse:     got int *
   drivers/watchdog/pcwd_pci.c:490:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_pci.c:490:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:490:24: sparse:     got int *
   drivers/watchdog/pcwd_pci.c:499:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_pci.c:499:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:499:24: sparse:     got int *
   drivers/watchdog/pcwd_pci.c:506:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_pci.c:506:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:506:21: sparse:     got int *
   drivers/watchdog/pcwd_pci.c:537:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_pci.c:537:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:537:21: sparse:     got int *
   drivers/watchdog/pcwd_pci.c:548:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_pci.c:548:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:548:24: sparse:     got int *
   drivers/watchdog/pcwd_pci.c:557:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/pcwd_pci.c:557:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/pcwd_pci.c:557:24: sparse:     got int *
--
>> drivers/watchdog/alim7101_wdt.c:199:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected char const [noderef] __user *__ptr_clean @@     got char const * @@
   drivers/watchdog/alim7101_wdt.c:199:37: sparse:     expected char const [noderef] __user *__ptr_clean
   drivers/watchdog/alim7101_wdt.c:199:37: sparse:     got char const *
>> drivers/watchdog/alim7101_wdt.c:250:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/alim7101_wdt.c:250:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/alim7101_wdt.c:250:24: sparse:     got int *
   drivers/watchdog/alim7101_wdt.c:255:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/alim7101_wdt.c:255:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/alim7101_wdt.c:255:21: sparse:     got int *
   drivers/watchdog/alim7101_wdt.c:274:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/alim7101_wdt.c:274:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/alim7101_wdt.c:274:21: sparse:     got int *
   drivers/watchdog/alim7101_wdt.c:284:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/watchdog/alim7101_wdt.c:284:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/watchdog/alim7101_wdt.c:284:24: sparse:     got int *
--
>> net/ipv6/ipv6_sockglue.c:1510:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/ipv6/ipv6_sockglue.c:1510:21: sparse:     expected int [noderef] __user *__ptr_clean
   net/ipv6/ipv6_sockglue.c:1510:21: sparse:     got int *
   net/ipv6/ipv6_sockglue.c:1515:31: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/ipv6/ipv6_sockglue.c:1515:31: sparse:     expected int [noderef] __user *__ptr_clean
   net/ipv6/ipv6_sockglue.c:1515:31: sparse:     got int *
--
>> net/netfilter/x_tables.c:297:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/netfilter/x_tables.c:297:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/netfilter/x_tables.c:297:13: sparse:     got unsigned short *
>> net/netfilter/x_tables.c:301:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned char [noderef] __user *__ptr_clean @@     got unsigned char * @@
   net/netfilter/x_tables.c:301:13: sparse:     expected unsigned char [noderef] __user *__ptr_clean
   net/netfilter/x_tables.c:301:13: sparse:     got unsigned char *
--
>> net/phonet/socket.c:367:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/phonet/socket.c:367:21: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/phonet/socket.c:367:21: sparse:     got unsigned short *
   net/phonet/socket.c:387:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/phonet/socket.c:387:24: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/phonet/socket.c:387:24: sparse:     got unsigned short *
   net/phonet/socket.c:622:14: sparse: sparse: incompatible types in comparison expression (different address spaces):
   net/phonet/socket.c:622:14: sparse:    struct sock [noderef] __rcu *
   net/phonet/socket.c:622:14: sparse:    struct sock *
   net/phonet/socket.c:645:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   net/phonet/socket.c:645:17: sparse:    struct sock [noderef] __rcu *
   net/phonet/socket.c:645:17: sparse:    struct sock *
   net/phonet/socket.c:661:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   net/phonet/socket.c:661:17: sparse:    struct sock [noderef] __rcu *
   net/phonet/socket.c:661:17: sparse:    struct sock *
   net/phonet/socket.c:680:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
   net/phonet/socket.c:680:25: sparse:    struct sock [noderef] __rcu *
   net/phonet/socket.c:680:25: sparse:    struct sock *
   net/phonet/socket.c:729:21: sparse: sparse: context imbalance in 'pn_res_seq_start' - wrong count at exit
   net/phonet/socket.c:744:13: sparse: sparse: context imbalance in 'pn_res_seq_stop' - wrong count at exit
--
>> net/phonet/datagram.c:42:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/phonet/datagram.c:42:24: sparse:     expected int [noderef] __user *__ptr_clean
   net/phonet/datagram.c:42:24: sparse:     got int *
>> net/phonet/datagram.c:47:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/phonet/datagram.c:47:29: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/phonet/datagram.c:47:29: sparse:     got unsigned int *
--
>> net/phonet/pep.c:942:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/phonet/pep.c:942:23: sparse:     expected int [noderef] __user *__ptr_clean
   net/phonet/pep.c:942:23: sparse:     got int *
   net/phonet/pep.c:1051:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/phonet/pep.c:1051:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/phonet/pep.c:1051:13: sparse:     got int *
   net/phonet/pep.c:1078:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/phonet/pep.c:1078:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/phonet/pep.c:1078:13: sparse:     got int *
   net/phonet/pep.c:1080:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/phonet/pep.c:1080:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/phonet/pep.c:1080:13: sparse:     got int *
--
   net/qrtr/af_qrtr.c:179:27: sparse: sparse: incompatible types in comparison expression (different base types):
   net/qrtr/af_qrtr.c:179:27: sparse:    void [noderef] __rcu *
   net/qrtr/af_qrtr.c:179:27: sparse:    struct qrtr_node *
   net/qrtr/af_qrtr.c:366:25: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __le32 [usertype] confirm_rx @@     got int @@
   net/qrtr/af_qrtr.c:630:27: sparse: sparse: incompatible types in comparison expression (different base types):
   net/qrtr/af_qrtr.c:630:27: sparse:    void [noderef] __rcu *
   net/qrtr/af_qrtr.c:630:27: sparse:    struct qrtr_node *
>> net/qrtr/af_qrtr.c:1154:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/qrtr/af_qrtr.c:1160:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
--
>> drivers/misc/vmw_vmci/vmci_host.c:260:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/misc/vmw_vmci/vmci_host.c:260:21: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:260:21: sparse:     got int *
   drivers/misc/vmw_vmci/vmci_host.c:498:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/misc/vmw_vmci/vmci_host.c:498:13: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:498:13: sparse:     got int *
>> drivers/misc/vmw_vmci/vmci_host.c:547:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   drivers/misc/vmw_vmci/vmci_host.c:547:16: sparse:     expected signed int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:547:16: sparse:     got signed int *
   drivers/misc/vmw_vmci/vmci_host.c:589:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   drivers/misc/vmw_vmci/vmci_host.c:589:13: sparse:     expected signed int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:589:13: sparse:     got signed int *
   drivers/misc/vmw_vmci/vmci_host.c:603:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   drivers/misc/vmw_vmci/vmci_host.c:603:21: sparse:     expected signed int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:603:21: sparse:     got signed int *
   drivers/misc/vmw_vmci/vmci_host.c:651:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected signed int [noderef] __user *__ptr_clean @@     got signed int * @@
   drivers/misc/vmw_vmci/vmci_host.c:651:16: sparse:     expected signed int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:651:16: sparse:     got signed int *
   drivers/misc/vmw_vmci/vmci_host.c:674:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/misc/vmw_vmci/vmci_host.c:674:16: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:674:16: sparse:     got int *
   drivers/misc/vmw_vmci/vmci_host.c:698:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/misc/vmw_vmci/vmci_host.c:698:16: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:698:16: sparse:     got int *
>> drivers/misc/vmw_vmci/vmci_host.c:771:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/misc/vmw_vmci/vmci_host.c:771:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/misc/vmw_vmci/vmci_host.c:771:16: sparse:     got unsigned int *
--
   drivers/net/slip/slip.c:459:14: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/net/slip/slip.c:459:14: sparse:    void [noderef] __rcu *
   drivers/net/slip/slip.c:459:14: sparse:    void *
   drivers/net/slip/slip.c:893:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
   drivers/net/slip/slip.c:893:9: sparse:    void [noderef] __rcu *
   drivers/net/slip/slip.c:893:9: sparse:    void *
>> drivers/net/slip/slip.c:1094:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/slip/slip.c:1099:21: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
--
>> net/can/j1939/socket.c:755:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/can/j1939/socket.c:755:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/can/j1939/socket.c:755:13: sparse:     got int *
   net/can/j1939/socket.c:782:18: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/can/j1939/socket.c:782:18: sparse:     expected int [noderef] __user *__ptr_clean
   net/can/j1939/socket.c:782:18: sparse:     got int *
--
>> net/x25/af_x25.c:460:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/x25/af_x25.c:460:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/x25/af_x25.c:460:13: sparse:     got int *
   net/x25/af_x25.c:470:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   net/x25/af_x25.c:470:13: sparse:     expected int [noderef] __user *__ptr_clean
   net/x25/af_x25.c:470:13: sparse:     got int *
>> net/x25/af_x25.c:1386:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/x25/af_x25.c:1386:22: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/x25/af_x25.c:1386:22: sparse:     got unsigned int *
   net/x25/af_x25.c:1401:22: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   net/x25/af_x25.c:1401:22: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   net/x25/af_x25.c:1401:22: sparse:     got unsigned int *
--
>> drivers/net/wwan/wwan_core.c:791:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/wwan/wwan_core.c:791:23: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/wwan/wwan_core.c:791:23: sparse:     got int *
   drivers/net/wwan/wwan_core.c:844:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected int [noderef] __user *__ptr_clean @@     got int * @@
   drivers/net/wwan/wwan_core.c:844:24: sparse:     expected int [noderef] __user *__ptr_clean
   drivers/net/wwan/wwan_core.c:844:24: sparse:     got int *
--
>> drivers/media/rc/lirc_dev.c:365:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/media/rc/lirc_dev.c:365:23: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/media/rc/lirc_dev.c:365:23: sparse:     got unsigned int *
   drivers/media/rc/lirc_dev.c:569:23: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/media/rc/lirc_dev.c:569:23: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/media/rc/lirc_dev.c:569:23: sparse:     got unsigned int *
--
   net/ipv4/netfilter/ip_tables.c: note: in included file (through include/linux/netfilter_ipv4/ip_tables.h):
   include/uapi/linux/netfilter_ipv4/ip_tables.h:206:33: sparse: sparse: array of flexible structures
   net/ipv4/netfilter/ip_tables.c:38:16: sparse: sparse: array of flexible structures
   include/uapi/linux/netfilter_ipv4/ip_tables.h:218:36: sparse: sparse: array of flexible structures
>> net/ipv4/netfilter/ip_tables.c:1249:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/ipv4/netfilter/ip_tables.c:1249:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/ipv4/netfilter/ip_tables.c:1249:13: sparse:     got unsigned short *
   net/ipv4/netfilter/ip_tables.c:1250:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/ipv4/netfilter/ip_tables.c:1250:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/ipv4/netfilter/ip_tables.c:1250:13: sparse:     got unsigned short *
   net/ipv4/netfilter/ip_tables.c:1213:40: sparse: sparse: array of flexible structures
   net/ipv4/netfilter/ip_tables.c:1541:43: sparse: sparse: array of flexible structures
   net/ipv4/netfilter/ip_tables.c:38:16: sparse: sparse: Initializer entry defined twice
   net/ipv4/netfilter/ip_tables.c:38:16: sparse:   also defined here
   net/ipv4/netfilter/ip_tables.c:38:16: sparse: sparse: Initializer entry defined twice
   net/ipv4/netfilter/ip_tables.c:38:16: sparse:   also defined here
--
>> net/ipv6/netfilter/ip6_tables.c:1265:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/ipv6/netfilter/ip6_tables.c:1265:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/ipv6/netfilter/ip6_tables.c:1265:13: sparse:     got unsigned short *
   net/ipv6/netfilter/ip6_tables.c:1266:13: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   net/ipv6/netfilter/ip6_tables.c:1266:13: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   net/ipv6/netfilter/ip6_tables.c:1266:13: sparse:     got unsigned short *
   net/ipv6/netfilter/ip6_tables.c:1229:41: sparse: sparse: array of flexible structures
   net/ipv6/netfilter/ip6_tables.c:1550:44: sparse: sparse: array of flexible structures
   net/ipv6/netfilter/ip6_tables.c:42:16: sparse: sparse: Initializer entry defined twice
   net/ipv6/netfilter/ip6_tables.c:42:16: sparse:   also defined here
   net/ipv6/netfilter/ip6_tables.c:42:16: sparse: sparse: Initializer entry defined twice
   net/ipv6/netfilter/ip6_tables.c:42:16: sparse:   also defined here
--
>> drivers/video/fbdev/core/fbmem.c:1270:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1270:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1270:16: sparse:     got unsigned int *
   drivers/video/fbdev/core/fbmem.c:1272:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1272:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1272:16: sparse:     got unsigned int *
   drivers/video/fbdev/core/fbmem.c:1273:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1273:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1273:16: sparse:     got unsigned int *
   drivers/video/fbdev/core/fbmem.c:1274:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1274:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1274:16: sparse:     got unsigned int *
   drivers/video/fbdev/core/fbmem.c:1275:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1275:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1275:16: sparse:     got unsigned int *
>> drivers/video/fbdev/core/fbmem.c:1276:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   drivers/video/fbdev/core/fbmem.c:1276:16: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1276:16: sparse:     got unsigned short *
   drivers/video/fbdev/core/fbmem.c:1277:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   drivers/video/fbdev/core/fbmem.c:1277:16: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1277:16: sparse:     got unsigned short *
   drivers/video/fbdev/core/fbmem.c:1278:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned short [noderef] __user *__ptr_clean @@     got unsigned short * @@
   drivers/video/fbdev/core/fbmem.c:1278:16: sparse:     expected unsigned short [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1278:16: sparse:     got unsigned short *
   drivers/video/fbdev/core/fbmem.c:1279:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1279:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1279:16: sparse:     got unsigned int *
   drivers/video/fbdev/core/fbmem.c:1282:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1282:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1282:16: sparse:     got unsigned int *
   drivers/video/fbdev/core/fbmem.c:1284:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1284:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1284:16: sparse:     got unsigned int *
   drivers/video/fbdev/core/fbmem.c:1285:16: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/core/fbmem.c:1285:16: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/core/fbmem.c:1285:16: sparse:     got unsigned int *
--
>> drivers/video/fbdev/matrox/matroxfb_base.c:904:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/matrox/matroxfb_base.c:904:37: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/matrox/matroxfb_base.c:904:37: sparse:     got unsigned int *
   drivers/video/fbdev/matrox/matroxfb_base.c:1045:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/matrox/matroxfb_base.c:1045:37: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/matrox/matroxfb_base.c:1045:37: sparse:     got unsigned int *
   drivers/video/fbdev/matrox/matroxfb_base.c:1070:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/matrox/matroxfb_base.c:1070:37: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/matrox/matroxfb_base.c:1070:37: sparse:     got unsigned int *
   drivers/video/fbdev/matrox/matroxfb_base.c:1084:37: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected unsigned int [noderef] __user *__ptr_clean @@     got unsigned int * @@
   drivers/video/fbdev/matrox/matroxfb_base.c:1084:37: sparse:     expected unsigned int [noderef] __user *__ptr_clean
   drivers/video/fbdev/matrox/matroxfb_base.c:1084:37: sparse:     got unsigned int *

vim +1718 drivers/video/fbdev/sis/sis_main.c

^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1685  
67a6680d64e18c drivers/video/sis/sis_main.c       Christoph Hellwig   2006-01-14  1686  static int	sisfb_ioctl(struct fb_info *info, unsigned int cmd,
67a6680d64e18c drivers/video/sis/sis_main.c       Christoph Hellwig   2006-01-14  1687  			    unsigned long arg)
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1688  {
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1689  	struct sis_video_info	*ivideo = (struct sis_video_info *)info->par;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1690  	struct sis_memreq	sismemreq;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1691  	struct fb_vblank	sisvbblank;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1692  	u32			gpu32 = 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1693  #ifndef __user
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1694  #define __user
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1695  #endif
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1696  	u32 __user 		*argp = (u32 __user *)arg;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1697  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1698  	switch(cmd) {
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1699  	   case FBIO_ALLOC:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1700  		if(!capable(CAP_SYS_RAWIO))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1701  			return -EPERM;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1702  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1703  		if(copy_from_user(&sismemreq, (void __user *)arg, sizeof(sismemreq)))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1704  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1705  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1706  		sis_malloc(&sismemreq);
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1707  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1708  		if(copy_to_user((void __user *)arg, &sismemreq, sizeof(sismemreq))) {
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1709  			sis_free((u32)sismemreq.offset);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1710  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1711  		}
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1712  		break;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1713  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1714  	   case FBIO_FREE:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1715  		if(!capable(CAP_SYS_RAWIO))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1716  			return -EPERM;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1717  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09 @1718  		if(get_user(gpu32, argp))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1719  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1720  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1721  		sis_free(gpu32);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1722  		break;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1723  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1724  	   case FBIOGET_VBLANK:
fd02db9de73fae drivers/video/sis/sis_main.c       Dan Rosenberg       2010-09-22  1725  
fd02db9de73fae drivers/video/sis/sis_main.c       Dan Rosenberg       2010-09-22  1726  		memset(&sisvbblank, 0, sizeof(struct fb_vblank));
fd02db9de73fae drivers/video/sis/sis_main.c       Dan Rosenberg       2010-09-22  1727  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1728  		sisvbblank.count = 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1729  		sisvbblank.flags = sisfb_setupvbblankflags(ivideo, &sisvbblank.vcount, &sisvbblank.hcount);
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1730  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1731  		if(copy_to_user((void __user *)arg, &sisvbblank, sizeof(sisvbblank)))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1732  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1733  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1734  		break;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1735  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1736  	   case SISFB_GET_INFO_SIZE:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1737  		return put_user(sizeof(struct sisfb_info), argp);
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1738  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1739  	   case SISFB_GET_INFO_OLD:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1740  		if(ivideo->warncount++ < 10)
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1741  			printk(KERN_INFO
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1742  				"sisfb: Deprecated ioctl call received - update your application!\n");
df561f6688fef7 drivers/video/fbdev/sis/sis_main.c Gustavo A. R. Silva 2020-08-23  1743  		fallthrough;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1744  	   case SISFB_GET_INFO:  /* For communication with X driver */
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1745  		ivideo->sisfb_infoblock.sisfb_id         = SISFB_ID;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1746  		ivideo->sisfb_infoblock.sisfb_version    = VER_MAJOR;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1747  		ivideo->sisfb_infoblock.sisfb_revision   = VER_MINOR;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1748  		ivideo->sisfb_infoblock.sisfb_patchlevel = VER_LEVEL;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1749  		ivideo->sisfb_infoblock.chip_id = ivideo->chip_id;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1750  		ivideo->sisfb_infoblock.sisfb_pci_vendor = ivideo->chip_vendor;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1751  		ivideo->sisfb_infoblock.memory = ivideo->video_size / 1024;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1752  		ivideo->sisfb_infoblock.heapstart = ivideo->heapstart / 1024;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1753  		if(ivideo->modechanged) {
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1754  			ivideo->sisfb_infoblock.fbvidmode = ivideo->mode_no;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1755  		} else {
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1756  			ivideo->sisfb_infoblock.fbvidmode = ivideo->modeprechange;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1757  		}
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1758  		ivideo->sisfb_infoblock.sisfb_caps = ivideo->caps;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1759  		ivideo->sisfb_infoblock.sisfb_tqlen = ivideo->cmdQueueSize / 1024;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1760  		ivideo->sisfb_infoblock.sisfb_pcibus = ivideo->pcibus;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1761  		ivideo->sisfb_infoblock.sisfb_pcislot = ivideo->pcislot;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1762  		ivideo->sisfb_infoblock.sisfb_pcifunc = ivideo->pcifunc;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1763  		ivideo->sisfb_infoblock.sisfb_lcdpdc = ivideo->detectedpdc;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1764  		ivideo->sisfb_infoblock.sisfb_lcdpdca = ivideo->detectedpdca;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1765  		ivideo->sisfb_infoblock.sisfb_lcda = ivideo->detectedlcda;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1766  		ivideo->sisfb_infoblock.sisfb_vbflags = ivideo->vbflags;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1767  		ivideo->sisfb_infoblock.sisfb_currentvbflags = ivideo->currentvbflags;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1768  		ivideo->sisfb_infoblock.sisfb_scalelcd = ivideo->SiS_Pr.UsePanelScaler;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1769  		ivideo->sisfb_infoblock.sisfb_specialtiming = ivideo->SiS_Pr.SiS_CustomT;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1770  		ivideo->sisfb_infoblock.sisfb_haveemi = ivideo->SiS_Pr.HaveEMI ? 1 : 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1771  		ivideo->sisfb_infoblock.sisfb_haveemilcd = ivideo->SiS_Pr.HaveEMILCD ? 1 : 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1772  		ivideo->sisfb_infoblock.sisfb_emi30 = ivideo->SiS_Pr.EMI_30;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1773  		ivideo->sisfb_infoblock.sisfb_emi31 = ivideo->SiS_Pr.EMI_31;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1774  		ivideo->sisfb_infoblock.sisfb_emi32 = ivideo->SiS_Pr.EMI_32;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1775  		ivideo->sisfb_infoblock.sisfb_emi33 = ivideo->SiS_Pr.EMI_33;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1776  		ivideo->sisfb_infoblock.sisfb_tvxpos = (u16)(ivideo->tvxpos + 32);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1777  		ivideo->sisfb_infoblock.sisfb_tvypos = (u16)(ivideo->tvypos + 32);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1778  		ivideo->sisfb_infoblock.sisfb_heapsize = ivideo->sisfb_heap_size / 1024;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1779  		ivideo->sisfb_infoblock.sisfb_videooffset = ivideo->video_offset;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1780  		ivideo->sisfb_infoblock.sisfb_curfstn = ivideo->curFSTN;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1781  		ivideo->sisfb_infoblock.sisfb_curdstn = ivideo->curDSTN;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1782  		ivideo->sisfb_infoblock.sisfb_vbflags2 = ivideo->vbflags2;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1783  		ivideo->sisfb_infoblock.sisfb_can_post = ivideo->sisfb_can_post ? 1 : 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1784  		ivideo->sisfb_infoblock.sisfb_card_posted = ivideo->sisfb_card_posted ? 1 : 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1785  		ivideo->sisfb_infoblock.sisfb_was_boot_device = ivideo->sisfb_was_boot_device ? 1 : 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1786  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1787  		if(copy_to_user((void __user *)arg, &ivideo->sisfb_infoblock,
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1788  						sizeof(ivideo->sisfb_infoblock)))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1789  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1790  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1791  	        break;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1792  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1793  	   case SISFB_GET_VBRSTATUS_OLD:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1794  		if(ivideo->warncount++ < 10)
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1795  			printk(KERN_INFO
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1796  				"sisfb: Deprecated ioctl call received - update your application!\n");
df561f6688fef7 drivers/video/fbdev/sis/sis_main.c Gustavo A. R. Silva 2020-08-23  1797  		fallthrough;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1798  	   case SISFB_GET_VBRSTATUS:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1799  		if(sisfb_CheckVBRetrace(ivideo))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1800  			return put_user((u32)1, argp);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1801  		else
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1802  			return put_user((u32)0, argp);
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1803  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1804  	   case SISFB_GET_AUTOMAXIMIZE_OLD:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1805  		if(ivideo->warncount++ < 10)
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1806  			printk(KERN_INFO
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1807  				"sisfb: Deprecated ioctl call received - update your application!\n");
df561f6688fef7 drivers/video/fbdev/sis/sis_main.c Gustavo A. R. Silva 2020-08-23  1808  		fallthrough;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1809  	   case SISFB_GET_AUTOMAXIMIZE:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1810  		if(ivideo->sisfb_max)
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1811  			return put_user((u32)1, argp);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1812  		else
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1813  			return put_user((u32)0, argp);
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1814  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1815  	   case SISFB_SET_AUTOMAXIMIZE_OLD:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1816  		if(ivideo->warncount++ < 10)
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1817  			printk(KERN_INFO
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1818  				"sisfb: Deprecated ioctl call received - update your application!\n");
df561f6688fef7 drivers/video/fbdev/sis/sis_main.c Gustavo A. R. Silva 2020-08-23  1819  		fallthrough;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1820  	   case SISFB_SET_AUTOMAXIMIZE:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1821  		if(get_user(gpu32, argp))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1822  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1823  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1824  		ivideo->sisfb_max = (gpu32) ? 1 : 0;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1825  		break;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1826  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1827  	   case SISFB_SET_TVPOSOFFSET:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1828  		if(get_user(gpu32, argp))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1829  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1830  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1831  		sisfb_set_TVxposoffset(ivideo, ((int)(gpu32 >> 16)) - 32);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1832  		sisfb_set_TVyposoffset(ivideo, ((int)(gpu32 & 0xffff)) - 32);
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1833  		break;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1834  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1835  	   case SISFB_GET_TVPOSOFFSET:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1836  		return put_user((u32)(((ivideo->tvxpos+32)<<16)|((ivideo->tvypos+32)&0xffff)),
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1837  							argp);
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1838  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1839  	   case SISFB_COMMAND:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1840  		if(copy_from_user(&ivideo->sisfb_command, (void __user *)arg,
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1841  							sizeof(struct sisfb_cmd)))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1842  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1843  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1844  		sisfb_handle_command(ivideo, &ivideo->sisfb_command);
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1845  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1846  		if(copy_to_user((void __user *)arg, &ivideo->sisfb_command,
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1847  							sizeof(struct sisfb_cmd)))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1848  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1849  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1850  		break;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1851  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1852  	   case SISFB_SET_LOCK:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1853  		if(get_user(gpu32, argp))
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1854  			return -EFAULT;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1855  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1856  		ivideo->sisfblocked = (gpu32) ? 1 : 0;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1857  		break;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1858  
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1859  	   default:
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1860  #ifdef SIS_NEW_CONFIG_COMPAT
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1861  		return -ENOIOCTLCMD;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1862  #else
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1863  		return -EINVAL;
544393fe584d33 drivers/video/sis/sis_main.c       Thomas Winischhofer 2005-09-09  1864  #endif
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1865  	}
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1866  	return 0;
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1867  }
^1da177e4c3f41 drivers/video/sis/sis_main.c       Linus Torvalds      2005-04-16  1868  

:::::: The code at line 1718 was first introduced by commit
:::::: 544393fe584d333480659a4bed30f5295355df11 [PATCH] sisfb update

:::::: TO: Thomas Winischhofer <thomas@...ischhofer.net>
:::::: CC: Linus Torvalds <torvalds@...osdl.org>

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

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ