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>] [thread-next>] [day] [month] [year] [list]
Message-ID: <202008071833.kUoyxyIe%lkp@intel.com>
Date:   Fri, 7 Aug 2020 18:37:36 +0800
From:   kernel test robot <lkp@...el.com>
To:     Luc Van Oostenryck <luc.vanoostenryck@...il.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: drivers/video/fbdev/pxafb.c:916:24: sparse: sparse: incorrect type
 in assignment (different address spaces)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   86cfccb66937dd6cbf26ed619958b9e587e6a115
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces
date:   7 weeks ago
config: arm-randconfig-s031-20200807 (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # apt-get install sparse
        # sparse version: v0.6.2-118-ge1578773-dirty
        git checkout 670d0a4b10704667765f7d18f7592993d02783aa
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm 

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


sparse warnings: (new ones prefixed by >>)

>> drivers/video/fbdev/pxafb.c:916:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void [noderef] __iomem *video_mem @@     got void * @@
>> drivers/video/fbdev/pxafb.c:916:24: sparse:     expected void [noderef] __iomem *video_mem
   drivers/video/fbdev/pxafb.c:916:24: sparse:     got void *
>> drivers/video/fbdev/pxafb.c:921:47: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile *x @@     got void [noderef] __iomem *video_mem @@
   drivers/video/fbdev/pxafb.c:921:47: sparse:     expected void const volatile *x
>> drivers/video/fbdev/pxafb.c:921:47: sparse:     got void [noderef] __iomem *video_mem
>> drivers/video/fbdev/pxafb.c:977:53: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void *virt @@     got void [noderef] __iomem *video_mem @@
   drivers/video/fbdev/pxafb.c:977:53: sparse:     expected void *virt
   drivers/video/fbdev/pxafb.c:977:53: sparse:     got void [noderef] __iomem *video_mem
   drivers/video/fbdev/pxafb.c:1714:24: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void [noderef] __iomem *video_mem @@     got void * @@
   drivers/video/fbdev/pxafb.c:1714:24: sparse:     expected void [noderef] __iomem *video_mem
   drivers/video/fbdev/pxafb.c:1714:24: sparse:     got void *
   drivers/video/fbdev/pxafb.c:1718:47: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile *x @@     got void [noderef] __iomem *video_mem @@
   drivers/video/fbdev/pxafb.c:1718:47: sparse:     expected void const volatile *x
   drivers/video/fbdev/pxafb.c:1718:47: sparse:     got void [noderef] __iomem *video_mem
   drivers/video/fbdev/pxafb.c:2392:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void *virt @@     got void [noderef] __iomem *video_mem @@
   drivers/video/fbdev/pxafb.c:2392:29: sparse:     expected void *virt
   drivers/video/fbdev/pxafb.c:2392:29: sparse:     got void [noderef] __iomem *video_mem
   drivers/video/fbdev/pxafb.c:2418:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void *virt @@     got void [noderef] __iomem *video_mem @@
   drivers/video/fbdev/pxafb.c:2418:29: sparse:     expected void *virt
   drivers/video/fbdev/pxafb.c:2418:29: sparse:     got void [noderef] __iomem *video_mem
--
>> drivers/firmware/efi/test/efi_test.c:157:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long [noderef] __user *register __p @@     got unsigned long *[addressable] data_size @@
>> drivers/firmware/efi/test/efi_test.c:157:13: sparse:     expected unsigned long [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:157:13: sparse:     got unsigned long *[addressable] data_size
   drivers/firmware/efi/test/efi_test.c:160:61: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] __user *from @@     got struct guid_t [usertype] *[addressable] vendor_guid @@
   drivers/firmware/efi/test/efi_test.c:160:61: sparse:     expected void const [noderef] __user *from
   drivers/firmware/efi/test/efi_test.c:160:61: sparse:     got struct guid_t [usertype] *[addressable] vendor_guid
   drivers/firmware/efi/test/efi_test.c:167:60: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected unsigned short [noderef] [usertype] __user *src @@     got unsigned short [usertype] *[addressable] variable_name @@
   drivers/firmware/efi/test/efi_test.c:167:60: sparse:     expected unsigned short [noderef] [usertype] __user *src
   drivers/firmware/efi/test/efi_test.c:167:60: sparse:     got unsigned short [usertype] *[addressable] variable_name
>> drivers/firmware/efi/test/efi_test.c:187:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
>> drivers/firmware/efi/test/efi_test.c:187:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:187:13: sparse:     got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:194:35: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long *[addressable] data_size @@
   drivers/firmware/efi/test/efi_test.c:194:35: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:194:35: sparse:     got unsigned long *[addressable] data_size
   drivers/firmware/efi/test/efi_test.c:209:45: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __user *to @@     got void *[addressable] data @@
   drivers/firmware/efi/test/efi_test.c:209:45: sparse:     expected void [noderef] __user *to
   drivers/firmware/efi/test/efi_test.c:209:45: sparse:     got void *[addressable] data
>> drivers/firmware/efi/test/efi_test.c:215:19: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const [noderef] __user *__pu_ptr @@     got unsigned int [usertype] *[addressable] attributes @@
>> drivers/firmware/efi/test/efi_test.c:215:19: sparse:     expected unsigned int const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:215:19: sparse:     got unsigned int [usertype] *[addressable] attributes
   drivers/firmware/efi/test/efi_test.c:220:19: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long *[addressable] data_size @@
   drivers/firmware/efi/test/efi_test.c:220:19: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:220:19: sparse:     got unsigned long *[addressable] data_size
   drivers/firmware/efi/test/efi_test.c:243:53: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] __user *from @@     got struct guid_t [usertype] *[addressable] vendor_guid @@
   drivers/firmware/efi/test/efi_test.c:243:53: sparse:     expected void const [noderef] __user *from
   drivers/firmware/efi/test/efi_test.c:243:53: sparse:     got struct guid_t [usertype] *[addressable] vendor_guid
   drivers/firmware/efi/test/efi_test.c:248:60: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected unsigned short [noderef] [usertype] __user *src @@     got unsigned short [usertype] *[addressable] variable_name @@
   drivers/firmware/efi/test/efi_test.c:248:60: sparse:     expected unsigned short [noderef] [usertype] __user *src
   drivers/firmware/efi/test/efi_test.c:248:60: sparse:     got unsigned short [usertype] *[addressable] variable_name
   drivers/firmware/efi/test/efi_test.c:253:39: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const [noderef] __user * @@     got void *[addressable] data @@
   drivers/firmware/efi/test/efi_test.c:253:39: sparse:     expected void const [noderef] __user *
   drivers/firmware/efi/test/efi_test.c:253:39: sparse:     got void *[addressable] data
   drivers/firmware/efi/test/efi_test.c:263:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:263:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:263:13: sparse:     got unsigned long [usertype] *[addressable] status
   drivers/firmware/efi/test/efi_test.c:292:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:292:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:292:13: sparse:     got unsigned long [usertype] *[addressable] status
   drivers/firmware/efi/test/efi_test.c:301:27: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct efi_time_cap_t [noderef] [usertype] __user *cap_local @@     got struct efi_time_cap_t [usertype] * @@
   drivers/firmware/efi/test/efi_test.c:301:27: sparse:     expected struct efi_time_cap_t [noderef] [usertype] __user *cap_local
   drivers/firmware/efi/test/efi_test.c:301:27: sparse:     got struct efi_time_cap_t [usertype] *
   drivers/firmware/efi/test/efi_test.c:308:41: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __user *to @@     got struct efi_time_t [usertype] *[addressable] time @@
   drivers/firmware/efi/test/efi_test.c:308:41: sparse:     expected void [noderef] __user *to
   drivers/firmware/efi/test/efi_test.c:308:41: sparse:     got struct efi_time_t [usertype] *[addressable] time
   drivers/firmware/efi/test/efi_test.c:325:46: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] __user *from @@     got struct efi_time_t [usertype] *[addressable] time @@
   drivers/firmware/efi/test/efi_test.c:325:46: sparse:     expected void const [noderef] __user *from
   drivers/firmware/efi/test/efi_test.c:325:46: sparse:     got struct efi_time_t [usertype] *[addressable] time
   drivers/firmware/efi/test/efi_test.c:330:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:330:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:330:13: sparse:     got unsigned long [usertype] *[addressable] status
   drivers/firmware/efi/test/efi_test.c:354:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:354:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:354:13: sparse:     got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:360:38: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned char const [noderef] __user *__pu_ptr @@     got unsigned char [usertype] *[addressable] enabled @@
>> drivers/firmware/efi/test/efi_test.c:360:38: sparse:     expected unsigned char const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:360:38: sparse:     got unsigned char [usertype] *[addressable] enabled
   drivers/firmware/efi/test/efi_test.c:365:47: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __user *to @@     got struct efi_time_t [usertype] *[addressable] time @@
   drivers/firmware/efi/test/efi_test.c:365:47: sparse:     expected void [noderef] __user *to
   drivers/firmware/efi/test/efi_test.c:365:47: sparse:     got struct efi_time_t [usertype] *[addressable] time
   drivers/firmware/efi/test/efi_test.c:389:60: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] __user *from @@     got struct efi_time_t [usertype] *[addressable] time @@
   drivers/firmware/efi/test/efi_test.c:389:60: sparse:     expected void const [noderef] __user *from
   drivers/firmware/efi/test/efi_test.c:389:60: sparse:     got struct efi_time_t [usertype] *[addressable] time
   drivers/firmware/efi/test/efi_test.c:397:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:397:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:397:13: sparse:     got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:421:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long [noderef] __user *register __p @@     got unsigned long *[addressable] variable_name_size @@
   drivers/firmware/efi/test/efi_test.c:421:21: sparse:     expected unsigned long [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:421:21: sparse:     got unsigned long *[addressable] variable_name_size
   drivers/firmware/efi/test/efi_test.c:429:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] __user *from @@     got struct guid_t [usertype] *[addressable] vendor_guid @@
   drivers/firmware/efi/test/efi_test.c:429:52: sparse:     expected void const [noderef] __user *from
   drivers/firmware/efi/test/efi_test.c:429:52: sparse:     got struct guid_t [usertype] *[addressable] vendor_guid
   drivers/firmware/efi/test/efi_test.c:439:52: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected unsigned short [noderef] [usertype] __user *src @@     got unsigned short [usertype] *[addressable] variable_name @@
   drivers/firmware/efi/test/efi_test.c:439:52: sparse:     expected unsigned short [noderef] [usertype] __user *src
   drivers/firmware/efi/test/efi_test.c:439:52: sparse:     got unsigned short [usertype] *[addressable] variable_name
   drivers/firmware/efi/test/efi_test.c:452:52: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected unsigned short [noderef] [usertype] __user *src @@     got unsigned short [usertype] *[addressable] variable_name @@
   drivers/firmware/efi/test/efi_test.c:452:52: sparse:     expected unsigned short [noderef] [usertype] __user *src
   drivers/firmware/efi/test/efi_test.c:452:52: sparse:     got unsigned short [usertype] *[addressable] variable_name
   drivers/firmware/efi/test/efi_test.c:461:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:461:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:461:13: sparse:     got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:468:35: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long *[addressable] variable_name_size @@
   drivers/firmware/efi/test/efi_test.c:468:35: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:468:35: sparse:     got unsigned long *[addressable] variable_name_size
   drivers/firmware/efi/test/efi_test.c:479:62: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected unsigned short [noderef] [usertype] __user *dst @@     got unsigned short [usertype] *[addressable] variable_name @@
   drivers/firmware/efi/test/efi_test.c:479:62: sparse:     expected unsigned short [noderef] [usertype] __user *dst
   drivers/firmware/efi/test/efi_test.c:479:62: sparse:     got unsigned short [usertype] *[addressable] variable_name
   drivers/firmware/efi/test/efi_test.c:487:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long *[addressable] variable_name_size @@
   drivers/firmware/efi/test/efi_test.c:487:21: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:487:21: sparse:     got unsigned long *[addressable] variable_name_size
   drivers/firmware/efi/test/efi_test.c:494:53: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __user *to @@     got struct guid_t [usertype] *[addressable] vendor_guid @@
   drivers/firmware/efi/test/efi_test.c:494:53: sparse:     expected void [noderef] __user *to
   drivers/firmware/efi/test/efi_test.c:494:53: sparse:     got struct guid_t [usertype] *[addressable] vendor_guid
   drivers/firmware/efi/test/efi_test.c:522:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:522:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:522:13: sparse:     got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:529:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const [noderef] __user *__pu_ptr @@     got unsigned int [usertype] *[addressable] high_count @@
   drivers/firmware/efi/test/efi_test.c:529:13: sparse:     expected unsigned int const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:529:13: sparse:     got unsigned int [usertype] *[addressable] high_count
   drivers/firmware/efi/test/efi_test.c:546:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const [noderef] __user * @@     got void * @@
   drivers/firmware/efi/test/efi_test.c:546:37: sparse:     expected void const [noderef] __user *
   drivers/firmware/efi/test/efi_test.c:546:37: sparse:     got void *
   drivers/firmware/efi/test/efi_test.c:575:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] status @@
   drivers/firmware/efi/test/efi_test.c:575:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:575:13: sparse:     got unsigned long [usertype] *[addressable] status
>> drivers/firmware/efi/test/efi_test.c:581:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const [noderef] __user *__pu_ptr @@     got unsigned long long [usertype] *[addressable] maximum_variable_storage_size @@
>> drivers/firmware/efi/test/efi_test.c:581:13: sparse:     expected unsigned long long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:581:13: sparse:     got unsigned long long [usertype] *[addressable] maximum_variable_storage_size
   drivers/firmware/efi/test/efi_test.c:585:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const [noderef] __user *__pu_ptr @@     got unsigned long long [usertype] *[addressable] remaining_variable_storage_size @@
   drivers/firmware/efi/test/efi_test.c:585:13: sparse:     expected unsigned long long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:585:13: sparse:     got unsigned long long [usertype] *[addressable] remaining_variable_storage_size
   drivers/firmware/efi/test/efi_test.c:589:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const [noderef] __user *__pu_ptr @@     got unsigned long long [usertype] *[addressable] maximum_variable_size @@
   drivers/firmware/efi/test/efi_test.c:589:13: sparse:     expected unsigned long long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:589:13: sparse:     got unsigned long long [usertype] *[addressable] maximum_variable_size
>> drivers/firmware/efi/test/efi_test.c:625:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct efi_capsule_header_t [usertype] *[noderef] __user *register __p @@     got struct efi_capsule_header_t [usertype] ** @@
>> drivers/firmware/efi/test/efi_test.c:625:21: sparse:     expected struct efi_capsule_header_t [usertype] *[noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:625:21: sparse:     got struct efi_capsule_header_t [usertype] **
   drivers/firmware/efi/test/efi_test.c:629:50: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void const [noderef] __user *from @@     got struct efi_capsule_header_t [usertype] *[assigned] c @@
   drivers/firmware/efi/test/efi_test.c:629:50: sparse:     expected void const [noderef] __user *from
   drivers/firmware/efi/test/efi_test.c:629:50: sparse:     got struct efi_capsule_header_t [usertype] *[assigned] c
   drivers/firmware/efi/test/efi_test.c:643:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long const [noderef] __user *__pu_ptr @@     got unsigned long [usertype] *[addressable] [assigned] status @@
   drivers/firmware/efi/test/efi_test.c:643:13: sparse:     expected unsigned long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:643:13: sparse:     got unsigned long [usertype] *[addressable] [assigned] status
   drivers/firmware/efi/test/efi_test.c:653:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const [noderef] __user *__pu_ptr @@     got unsigned long long [usertype] *[addressable] [assigned] maximum_capsule_size @@
   drivers/firmware/efi/test/efi_test.c:653:13: sparse:     expected unsigned long long const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:653:13: sparse:     got unsigned long long [usertype] *[addressable] [assigned] maximum_capsule_size
>> drivers/firmware/efi/test/efi_test.c:658:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected int const [noderef] __user *__pu_ptr @@     got int *[addressable] [assigned] reset_type @@
>> drivers/firmware/efi/test/efi_test.c:658:13: sparse:     expected int const [noderef] __user *__pu_ptr
   drivers/firmware/efi/test/efi_test.c:658:13: sparse:     got int *[addressable] [assigned] reset_type
   drivers/firmware/efi/test/efi_test.c:35:27: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [usertype] *s @@     got unsigned short [noderef] [usertype] __user *str @@
   drivers/firmware/efi/test/efi_test.c:35:27: sparse:     expected unsigned short [usertype] *s
   drivers/firmware/efi/test/efi_test.c:35:27: sparse:     got unsigned short [noderef] [usertype] __user *str
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [noderef] __user *register __p @@     got unsigned short [usertype] * @@
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse:     expected unsigned short [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:44:13: sparse:     got unsigned short [usertype] *
   drivers/firmware/efi/test/efi_test.c:50:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [noderef] __user *register __p @@     got unsigned short [usertype] * @@
   drivers/firmware/efi/test/efi_test.c:50:21: sparse:     expected unsigned short [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:50:21: sparse:     got unsigned short [usertype] *
   drivers/firmware/efi/test/efi_test.c:35:27: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [usertype] *[assigned] s @@     got unsigned short [noderef] [usertype] __user *str @@
   drivers/firmware/efi/test/efi_test.c:35:27: sparse:     expected unsigned short [usertype] *[assigned] s
   drivers/firmware/efi/test/efi_test.c:35:27: sparse:     got unsigned short [noderef] [usertype] __user *str
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [noderef] __user *register __p @@     got unsigned short [usertype] * @@
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse:     expected unsigned short [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:44:13: sparse:     got unsigned short [usertype] *
   drivers/firmware/efi/test/efi_test.c:50:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [noderef] __user *register __p @@     got unsigned short [usertype] * @@
   drivers/firmware/efi/test/efi_test.c:50:21: sparse:     expected unsigned short [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:50:21: sparse:     got unsigned short [usertype] *
   drivers/firmware/efi/test/efi_test.c:35:27: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [usertype] *[assigned] s @@     got unsigned short [noderef] [usertype] __user *str @@
   drivers/firmware/efi/test/efi_test.c:35:27: sparse:     expected unsigned short [usertype] *[assigned] s
   drivers/firmware/efi/test/efi_test.c:35:27: sparse:     got unsigned short [noderef] [usertype] __user *str
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [noderef] __user *register __p @@     got unsigned short [usertype] * @@
>> drivers/firmware/efi/test/efi_test.c:44:13: sparse:     expected unsigned short [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:44:13: sparse:     got unsigned short [usertype] *
   drivers/firmware/efi/test/efi_test.c:50:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short [noderef] __user *register __p @@     got unsigned short [usertype] * @@
   drivers/firmware/efi/test/efi_test.c:50:21: sparse:     expected unsigned short [noderef] __user *register __p
   drivers/firmware/efi/test/efi_test.c:50:21: sparse:     got unsigned short [usertype] *

vim +916 drivers/video/fbdev/pxafb.c

782385ae176b304 drivers/video/pxafb.c Eric Miao          2009-03-19  909  
48c68c4f1b54244 drivers/video/pxafb.c Greg Kroah-Hartman 2012-12-21  910  static int pxafb_overlay_map_video_memory(struct pxafb_info *pxafb,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  911  					  struct pxafb_layer *ofb)
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  912  {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  913  	/* We assume that user will use at most video_mem_size for overlay fb,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  914  	 * anyway, it's useless to use 16bpp main plane and 24bpp overlay
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  915  	 */
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11 @916  	ofb->video_mem = alloc_pages_exact(PAGE_ALIGN(pxafb->video_mem_size),
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  917  		GFP_KERNEL | __GFP_ZERO);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  918  	if (ofb->video_mem == NULL)
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  919  		return -ENOMEM;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  920  
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11 @921  	ofb->video_mem_phys = virt_to_phys(ofb->video_mem);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  922  	ofb->video_mem_size = PAGE_ALIGN(pxafb->video_mem_size);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  923  
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  924  	mutex_lock(&ofb->fb.mm_lock);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  925  	ofb->fb.fix.smem_start	= ofb->video_mem_phys;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  926  	ofb->fb.fix.smem_len	= pxafb->video_mem_size;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  927  	mutex_unlock(&ofb->fb.mm_lock);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  928  
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  929  	ofb->fb.screen_base	= ofb->video_mem;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  930  
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  931  	return 0;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  932  }
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  933  
48c68c4f1b54244 drivers/video/pxafb.c Greg Kroah-Hartman 2012-12-21  934  static void pxafb_overlay_init(struct pxafb_info *fbi)
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  935  {
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  936  	int i, ret;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  937  
782385ae176b304 drivers/video/pxafb.c Eric Miao          2009-03-19  938  	if (!pxafb_overlay_supported())
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  939  		return;
782385ae176b304 drivers/video/pxafb.c Eric Miao          2009-03-19  940  
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  941  	for (i = 0; i < 2; i++) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  942  		struct pxafb_layer *ofb = &fbi->overlay[i];
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  943  		init_pxafb_overlay(fbi, ofb, i);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  944  		ret = register_framebuffer(&ofb->fb);
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  945  		if (ret) {
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  946  			dev_err(fbi->dev, "failed to register overlay %d\n", i);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  947  			continue;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  948  		}
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  949  		ret = pxafb_overlay_map_video_memory(fbi, ofb);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  950  		if (ret) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  951  			dev_err(fbi->dev,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  952  				"failed to map video memory for overlay %d\n",
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  953  				i);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  954  			unregister_framebuffer(&ofb->fb);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  955  			continue;
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  956  		}
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  957  		ofb->registered = 1;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  958  	}
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  959  
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  960  	/* mask all IU/BS/EOF/SOF interrupts */
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  961  	lcd_writel(fbi, LCCR5, ~0);
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  962  
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  963  	pr_info("PXA Overlay driver loaded successfully!\n");
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  964  }
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  965  
48c68c4f1b54244 drivers/video/pxafb.c Greg Kroah-Hartman 2012-12-21  966  static void pxafb_overlay_exit(struct pxafb_info *fbi)
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  967  {
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  968  	int i;
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  969  
782385ae176b304 drivers/video/pxafb.c Eric Miao          2009-03-19  970  	if (!pxafb_overlay_supported())
782385ae176b304 drivers/video/pxafb.c Eric Miao          2009-03-19  971  		return;
782385ae176b304 drivers/video/pxafb.c Eric Miao          2009-03-19  972  
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  973  	for (i = 0; i < 2; i++) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  974  		struct pxafb_layer *ofb = &fbi->overlay[i];
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  975  		if (ofb->registered) {
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  976  			if (ofb->video_mem)
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11 @977  				free_pages_exact(ofb->video_mem,
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  978  					ofb->video_mem_size);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  979  			unregister_framebuffer(&ofb->fb);
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  980  		}
1b98d7c4491e5ea drivers/video/pxafb.c Vasily Khoruzhick  2011-03-11  981  	}
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  982  }
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  983  #else
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  984  static inline void pxafb_overlay_init(struct pxafb_info *fbi) {}
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  985  static inline void pxafb_overlay_exit(struct pxafb_info *fbi) {}
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  986  #endif /* CONFIG_FB_PXA_OVERLAY */
198fc108ee4c2cd drivers/video/pxafb.c Eric Miao          2008-12-23  987  

:::::: The code at line 916 was first introduced by commit
:::::: 1b98d7c4491e5eaba7c403ec1bc5997e6596e569 ARM: pxafb: rework pxafb overlay memory management

:::::: TO: Vasily Khoruzhick <anarsoul@...il.com>
:::::: CC: Eric Miao <eric.y.miao@...il.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (30620 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ