tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   48778464bb7d346b47157d21ffde2af6b2d39110
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to 
define address spaces
date:   3 days ago
config: sh-randconfig-s032-20200622 (attached as .config)
compiler: sh4-linux-gcc (GCC) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.2-rc2-13-gc59158c8-dirty
        git checkout 670d0a4b10704667765f7d18f7592993d02783aa
        # save the attached .config to linux build tree
        make W=1 C=1 ARCH=sh CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>


sparse warnings: (new ones prefixed by >>)

>> drivers/misc/mic/vop/vop_main.c:551:51: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __iomem * @@     got restricted __le64 * @@
>> drivers/misc/mic/vop/vop_main.c:551:51: sparse:     expected void const 
>> volatile [noderef] __iomem *
   drivers/misc/mic/vop/vop_main.c:551:51: sparse:     got restricted __le64 *
   drivers/misc/mic/vop/vop_main.c:560:49: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected struct mic_device_ctrl 
*dc @@     got struct mic_device_ctrl [noderef] __iomem *dc @@
   drivers/misc/mic/vop/vop_main.c:560:49: sparse:     expected struct 
mic_device_ctrl *dc
   drivers/misc/mic/vop/vop_main.c:560:49: sparse:     got struct 
mic_device_ctrl [noderef] __iomem *dc
   drivers/misc/mic/vop/vop_main.c:579:49: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected struct mic_device_ctrl 
*dc @@     got struct mic_device_ctrl [noderef] __iomem *dc @@
   drivers/misc/mic/vop/vop_main.c:579:49: sparse:     expected struct 
mic_device_ctrl *dc
   drivers/misc/mic/vop/vop_main.c:579:49: sparse:     got struct 
mic_device_ctrl [noderef] __iomem *dc
--
   drivers/input/joydev.c:528:24: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected signed int const *__gu_addr @@     
got signed int [noderef] [usertype] __user * @@
   drivers/input/joydev.c:528:24: sparse:     expected signed int const 
*__gu_addr
   drivers/input/joydev.c:528:24: sparse:     got signed int [noderef] 
[usertype] __user *
>> drivers/input/joydev.c:528:24: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got signed int const *__gu_addr @@
>> drivers/input/joydev.c:528:24: sparse:     expected void const volatile 
>> [noderef] __user *
   drivers/input/joydev.c:528:24: sparse:     got signed int const *__gu_addr
   drivers/input/joydev.c:680:26: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected long const *__gu_addr @@     got 
long [noderef] __user * @@
   drivers/input/joydev.c:680:26: sparse:     expected long const *__gu_addr
   drivers/input/joydev.c:680:26: sparse:     got long [noderef] __user *
>> drivers/input/joydev.c:680:26: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got long const *__gu_addr @@
   drivers/input/joydev.c:680:26: sparse:     expected void const volatile 
[noderef] __user *
   drivers/input/joydev.c:680:26: sparse:     got long const *__gu_addr
--
   drivers/hid/hidraw.c:389:37: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   drivers/hid/hidraw.c:389:37: sparse:     expected int const *__gu_addr
   drivers/hid/hidraw.c:389:37: sparse:     got int [noderef] __user *
>> drivers/hid/hidraw.c:389:37: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
>> drivers/hid/hidraw.c:389:37: sparse:     expected void const volatile 
>> [noderef] __user *
   drivers/hid/hidraw.c:389:37: sparse:     got int const *__gu_addr
--
>> drivers/vhost/vringh.c:567:18: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected restricted __virtio16 const 
>> *__gu_addr @@     got restricted __virtio16 [noderef] [usertype] __user * @@
   drivers/vhost/vringh.c:567:18: sparse:     expected restricted __virtio16 
const *__gu_addr
>> drivers/vhost/vringh.c:567:18: sparse:     got restricted __virtio16 
>> [noderef] [usertype] __user *
>> drivers/vhost/vringh.c:567:18: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got restricted __virtio16 const *__gu_addr @@
>> drivers/vhost/vringh.c:567:18: sparse:     expected void const volatile 
>> [noderef] __user *
   drivers/vhost/vringh.c:567:18: sparse:     got restricted __virtio16 const 
*__gu_addr
--
>> kernel/bpf/cgroup.c:1402:21: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected int const *__gu_addr @@     got 
>> int [noderef] __user *optlen @@
   kernel/bpf/cgroup.c:1402:21: sparse:     expected int const *__gu_addr
>> kernel/bpf/cgroup.c:1402:21: sparse:     got int [noderef] __user *optlen
>> kernel/bpf/cgroup.c:1402:21: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
>> kernel/bpf/cgroup.c:1402:21: sparse:     expected void const volatile 
>> [noderef] __user *
   kernel/bpf/cgroup.c:1402:21: sparse:     got int const *__gu_addr
--
>> sound/core/rawmidi.c:654:13: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected unsigned int const *__gu_addr @@  
>>    got unsigned int [noderef] __user * @@
   sound/core/rawmidi.c:654:13: sparse:     expected unsigned int const 
*__gu_addr
>> sound/core/rawmidi.c:654:13: sparse:     got unsigned int [noderef] __user *
>> sound/core/rawmidi.c:654:13: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got unsigned int const *__gu_addr @@
>> sound/core/rawmidi.c:654:13: sparse:     expected void const volatile 
>> [noderef] __user *
   sound/core/rawmidi.c:654:13: sparse:     got unsigned int const *__gu_addr
>> sound/core/rawmidi.c:656:13: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected int const *__gu_addr @@     got 
>> int [noderef] __user * @@
   sound/core/rawmidi.c:656:13: sparse:     expected int const *__gu_addr
>> sound/core/rawmidi.c:656:13: sparse:     got int [noderef] __user *
>> sound/core/rawmidi.c:656:13: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
   sound/core/rawmidi.c:656:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/rawmidi.c:656:13: sparse:     got int const *__gu_addr
   sound/core/rawmidi.c:658:13: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected unsigned int const *__gu_addr @@     
got unsigned int [noderef] __user * @@
   sound/core/rawmidi.c:658:13: sparse:     expected unsigned int const 
*__gu_addr
   sound/core/rawmidi.c:658:13: sparse:     got unsigned int [noderef] __user *
   sound/core/rawmidi.c:658:13: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got unsigned int const *__gu_addr @@
   sound/core/rawmidi.c:658:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/rawmidi.c:658:13: sparse:     got unsigned int const *__gu_addr
   sound/core/rawmidi.c:836:21: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   sound/core/rawmidi.c:836:21: sparse:     expected int const *__gu_addr
   sound/core/rawmidi.c:836:21: sparse:     got int [noderef] __user *
   sound/core/rawmidi.c:836:21: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got int const *__gu_addr @@
   sound/core/rawmidi.c:836:21: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/rawmidi.c:836:21: sparse:     got int const *__gu_addr
   sound/core/rawmidi.c:874:21: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   sound/core/rawmidi.c:874:21: sparse:     expected int const *__gu_addr
   sound/core/rawmidi.c:874:21: sparse:     got int [noderef] __user *
   sound/core/rawmidi.c:874:21: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got int const *__gu_addr @@
   sound/core/rawmidi.c:874:21: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/rawmidi.c:874:21: sparse:     got int const *__gu_addr
   sound/core/rawmidi.c:889:21: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   sound/core/rawmidi.c:889:21: sparse:     expected int const *__gu_addr
   sound/core/rawmidi.c:889:21: sparse:     got int [noderef] __user *
   sound/core/rawmidi.c:889:21: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got int const *__gu_addr @@
   sound/core/rawmidi.c:889:21: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/rawmidi.c:889:21: sparse:     got int const *__gu_addr
   sound/core/rawmidi.c:923:21: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   sound/core/rawmidi.c:923:21: sparse:     expected int const *__gu_addr
   sound/core/rawmidi.c:923:21: sparse:     got int [noderef] __user *
   sound/core/rawmidi.c:923:21: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got int const *__gu_addr @@
   sound/core/rawmidi.c:923:21: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/rawmidi.c:923:21: sparse:     got int const *__gu_addr
   sound/core/rawmidi.c:945:21: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   sound/core/rawmidi.c:945:21: sparse:     expected int const *__gu_addr
   sound/core/rawmidi.c:945:21: sparse:     got int [noderef] __user *
   sound/core/rawmidi.c:945:21: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got int const *__gu_addr @@
   sound/core/rawmidi.c:945:21: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/rawmidi.c:945:21: sparse:     got int const *__gu_addr
--
   sound/core/control.c:776:17: sparse: sparse: restricted snd_ctl_elem_type_t 
degrades to integer
   sound/core/control.c:776:26: sparse: sparse: restricted snd_ctl_elem_type_t 
degrades to integer
   sound/core/control.c:777:17: sparse: sparse: restricted snd_ctl_elem_type_t 
degrades to integer
   sound/core/control.c:777:26: sparse: sparse: restricted snd_ctl_elem_type_t 
degrades to integer
   sound/core/control.c:796:48: sparse: sparse: restricted snd_ctl_elem_type_t 
degrades to integer
   sound/core/control.c:1462:40: sparse: sparse: restricted snd_ctl_elem_type_t 
degrades to integer
>> sound/core/control.c:1565:13: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected int const *__gu_addr @@     got 
>> int [noderef] __user *ptr @@
   sound/core/control.c:1565:13: sparse:     expected int const *__gu_addr
>> sound/core/control.c:1565:13: sparse:     got int [noderef] __user *ptr
>> sound/core/control.c:1565:13: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
>> sound/core/control.c:1565:13: sparse:     expected void const volatile 
>> [noderef] __user *
   sound/core/control.c:1565:13: sparse:     got int const *__gu_addr
--
>> sound/core/hwdep.c:265:29: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected int const *__gu_addr @@     got 
>> int [noderef] __user * @@
   sound/core/hwdep.c:265:29: sparse:     expected int const *__gu_addr
>> sound/core/hwdep.c:265:29: sparse:     got int [noderef] __user *
>> sound/core/hwdep.c:265:29: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
>> sound/core/hwdep.c:265:29: sparse:     expected void const volatile 
>> [noderef] __user *
   sound/core/hwdep.c:265:29: sparse:     got int const *__gu_addr
>> sound/core/hwdep.c:294:29: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected unsigned int const *__gu_addr @@  
>>    got unsigned int [noderef] __user * @@
   sound/core/hwdep.c:294:29: sparse:     expected unsigned int const *__gu_addr
>> sound/core/hwdep.c:294:29: sparse:     got unsigned int [noderef] __user *
>> sound/core/hwdep.c:294:29: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got unsigned int const *__gu_addr @@
   sound/core/hwdep.c:294:29: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/hwdep.c:294:29: sparse:     got unsigned int const *__gu_addr
--
>> sound/core/timer.c:2045:13: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected int const *__gu_addr @@     got 
>> int [noderef] __user *p @@
   sound/core/timer.c:2045:13: sparse:     expected int const *__gu_addr
>> sound/core/timer.c:2045:13: sparse:     got int [noderef] __user *p
>> sound/core/timer.c:2045:13: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
>> sound/core/timer.c:2045:13: sparse:     expected void const volatile 
>> [noderef] __user *
   sound/core/timer.c:2045:13: sparse:     got int const *__gu_addr
   sound/core/timer.c:790:25: sparse: sparse: context imbalance in 
'snd_timer_process_callbacks' - unexpected unlock
--
>> sound/core/pcm.c:92:29: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected int const *__gu_addr @@     got 
>> int [noderef] __user * @@
   sound/core/pcm.c:92:29: sparse:     expected int const *__gu_addr
>> sound/core/pcm.c:92:29: sparse:     got int [noderef] __user *
>> sound/core/pcm.c:92:29: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
>> sound/core/pcm.c:92:29: sparse:     expected void const volatile [noderef] 
>> __user *
   sound/core/pcm.c:92:29: sparse:     got int const *__gu_addr
>> sound/core/pcm.c:112:29: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected unsigned int const *__gu_addr @@  
>>    got unsigned int [noderef] __user * @@
   sound/core/pcm.c:112:29: sparse:     expected unsigned int const *__gu_addr
>> sound/core/pcm.c:112:29: sparse:     got unsigned int [noderef] __user *
>> sound/core/pcm.c:112:29: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got unsigned int const *__gu_addr @@
   sound/core/pcm.c:112:29: sparse:     expected void const volatile [noderef] 
__user *
   sound/core/pcm.c:112:29: sparse:     got unsigned int const *__gu_addr
   sound/core/pcm.c:114:29: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   sound/core/pcm.c:114:29: sparse:     expected int const *__gu_addr
   sound/core/pcm.c:114:29: sparse:     got int [noderef] __user *
   sound/core/pcm.c:114:29: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got int const *__gu_addr @@
   sound/core/pcm.c:114:29: sparse:     expected void const volatile [noderef] 
__user *
   sound/core/pcm.c:114:29: sparse:     got int const *__gu_addr
   sound/core/pcm.c:119:29: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected unsigned int const *__gu_addr @@     
got unsigned int [noderef] __user * @@
   sound/core/pcm.c:119:29: sparse:     expected unsigned int const *__gu_addr
   sound/core/pcm.c:119:29: sparse:     got unsigned int [noderef] __user *
   sound/core/pcm.c:119:29: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got unsigned int const *__gu_addr @@
   sound/core/pcm.c:119:29: sparse:     expected void const volatile [noderef] 
__user *
   sound/core/pcm.c:119:29: sparse:     got unsigned int const *__gu_addr
   sound/core/pcm.c:155:29: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected int const *__gu_addr @@     got int 
[noderef] __user * @@
   sound/core/pcm.c:155:29: sparse:     expected int const *__gu_addr
   sound/core/pcm.c:155:29: sparse:     got int [noderef] __user *
   sound/core/pcm.c:155:29: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got int const *__gu_addr @@
   sound/core/pcm.c:155:29: sparse:     expected void const volatile [noderef] 
__user *
   sound/core/pcm.c:155:29: sparse:     got int const *__gu_addr
   sound/core/pcm.c:999:9: sparse: sparse: context imbalance in 
'snd_pcm_detach_substream' - different lock contexts for basic block
--
>> sound/core/pcm_native.c:1010:20: sparse: sparse: incorrect type in 
>> initializer (different address spaces) @@     expected unsigned int const 
>> *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   sound/core/pcm_native.c:1010:20: sparse:     expected unsigned int const 
*__gu_addr
>> sound/core/pcm_native.c:1010:20: sparse:     got unsigned int [noderef] 
>> [usertype] __user *
>> sound/core/pcm_native.c:1010:20: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got unsigned int const *__gu_addr @@
>> sound/core/pcm_native.c:1010:20: sparse:     expected void const volatile 
>> [noderef] __user *
   sound/core/pcm_native.c:1010:20: sparse:     got unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:1036:20: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   sound/core/pcm_native.c:1036:20: sparse:     expected unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:1036:20: sparse:     got unsigned int [noderef] 
[usertype] __user *
   sound/core/pcm_native.c:1036:20: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned int const *__gu_addr @@
   sound/core/pcm_native.c:1036:20: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:1036:20: sparse:     got unsigned int const 
*__gu_addr
>> sound/core/pcm_native.c:2944:13: sparse: sparse: incorrect type in 
>> initializer (different address spaces) @@     expected unsigned int const 
>> *__gu_addr @@     got unsigned int [noderef] __user * @@
   sound/core/pcm_native.c:2944:13: sparse:     expected unsigned int const 
*__gu_addr
>> sound/core/pcm_native.c:2944:13: sparse:     got unsigned int [noderef] 
>> __user *
   sound/core/pcm_native.c:2944:13: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned int const *__gu_addr @@
   sound/core/pcm_native.c:2944:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:2944:13: sparse:     got unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:3037:13: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] __user * @@
   sound/core/pcm_native.c:3037:13: sparse:     expected unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:3037:13: sparse:     got unsigned int [noderef] 
__user *
   sound/core/pcm_native.c:3037:13: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned int const *__gu_addr @@
   sound/core/pcm_native.c:3037:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:3037:13: sparse:     got unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:3038:13: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] __user * @@
   sound/core/pcm_native.c:3038:13: sparse:     expected unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:3038:13: sparse:     got unsigned int [noderef] 
__user *
   sound/core/pcm_native.c:3038:13: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned int const *__gu_addr @@
   sound/core/pcm_native.c:3038:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:3038:13: sparse:     got unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:3039:13: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] __user * @@
   sound/core/pcm_native.c:3039:13: sparse:     expected unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:3039:13: sparse:     got unsigned int [noderef] 
__user *
   sound/core/pcm_native.c:3039:13: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned int const *__gu_addr @@
   sound/core/pcm_native.c:3039:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:3039:13: sparse:     got unsigned int const 
*__gu_addr
>> sound/core/pcm_native.c:3087:13: sparse: sparse: incorrect type in 
>> initializer (different address spaces) @@     expected int const *__gu_addr 
>> @@     got int [noderef] __user *_arg @@
   sound/core/pcm_native.c:3087:13: sparse:     expected int const *__gu_addr
>> sound/core/pcm_native.c:3087:13: sparse:     got int [noderef] __user *_arg
>> sound/core/pcm_native.c:3087:13: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got int const *__gu_addr @@
   sound/core/pcm_native.c:3087:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:3087:13: sparse:     got int const *__gu_addr
>> sound/core/pcm_native.c:3153:13: sparse: sparse: incorrect type in 
>> initializer (different address spaces) @@     expected unsigned long const 
>> *__gu_addr @@     got unsigned long [noderef] [usertype] __user *_frames @@
   sound/core/pcm_native.c:3153:13: sparse:     expected unsigned long const 
*__gu_addr
>> sound/core/pcm_native.c:3153:13: sparse:     got unsigned long [noderef] 
>> [usertype] __user *_frames
>> sound/core/pcm_native.c:3153:13: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got unsigned long const *__gu_addr @@
   sound/core/pcm_native.c:3153:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:3153:13: sparse:     got unsigned long const 
*__gu_addr
   sound/core/pcm_native.c:3169:13: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned long const 
*__gu_addr @@     got unsigned long [noderef] [usertype] __user *_frames @@
   sound/core/pcm_native.c:3169:13: sparse:     expected unsigned long const 
*__gu_addr
   sound/core/pcm_native.c:3169:13: sparse:     got unsigned long [noderef] 
[usertype] __user *_frames
   sound/core/pcm_native.c:3169:13: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned long const *__gu_addr @@
   sound/core/pcm_native.c:3169:13: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:3169:13: sparse:     got unsigned long const 
*__gu_addr
   sound/core/pcm_native.c:3203:21: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] __user * @@
   sound/core/pcm_native.c:3203:21: sparse:     expected unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:3203:21: sparse:     got unsigned int [noderef] 
__user *
   sound/core/pcm_native.c:3203:21: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned int const *__gu_addr @@
   sound/core/pcm_native.c:3203:21: sparse:     expected void const volatile 
[noderef] __user *
   sound/core/pcm_native.c:3203:21: sparse:     got unsigned int const 
*__gu_addr
   sound/core/pcm_native.c:95:1: sparse: sparse: context imbalance in 
'snd_pcm_group_lock' - different lock contexts for basic block
   include/linux/spinlock.h:393:9: sparse: sparse: context imbalance in 
'snd_pcm_group_unlock' - unexpected unlock
   sound/core/pcm_native.c:97:1: sparse: sparse: context imbalance in 
'snd_pcm_group_lock_irq' - different lock contexts for basic block
   include/asm-generic/irqflags.h:47:9: sparse: sparse: context imbalance in 
'snd_pcm_group_unlock_irq' - unexpected unlock
   sound/core/pcm_native.c:145:9: sparse: sparse: context imbalance in 
'snd_pcm_stream_lock_nested' - different lock contexts for basic block
   sound/core/pcm_native.c:171:9: sparse: sparse: context imbalance in 
'_snd_pcm_stream_lock_irqsave' - different lock contexts for basic block
   include/linux/spinlock.h:408:9: sparse: sparse: context imbalance in 
'snd_pcm_stream_unlock_irqrestore' - unexpected unlock
   include/linux/spinlock.h:393:9: sparse: sparse: context imbalance in 
'snd_pcm_action_group' - unexpected unlock
   sound/core/pcm_native.c:1273:9: sparse: sparse: context imbalance in 
'snd_pcm_stream_group_ref' - different lock contexts for basic block
--
>> drivers/tty/vt/keyboard.c:1729:21: sparse: sparse: incorrect type in 
>> initializer (different address spaces) @@     expected unsigned int const 
>> *__gu_addr @@     got unsigned int [noderef] __user * @@
   drivers/tty/vt/keyboard.c:1729:21: sparse:     expected unsigned int const 
*__gu_addr
>> drivers/tty/vt/keyboard.c:1729:21: sparse:     got unsigned int [noderef] 
>> __user *
>> drivers/tty/vt/keyboard.c:1729:21: sparse: sparse: incorrect type in 
>> argument 1 (different address spaces) @@     expected void const volatile 
>> [noderef] __user * @@     got unsigned int const *__gu_addr @@
>> drivers/tty/vt/keyboard.c:1729:21: sparse:     expected void const volatile 
>> [noderef] __user *
   drivers/tty/vt/keyboard.c:1729:21: sparse:     got unsigned int const 
*__gu_addr
   drivers/tty/vt/keyboard.c:1767:21: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned int const 
*__gu_addr @@     got unsigned int [noderef] __user * @@
   drivers/tty/vt/keyboard.c:1767:21: sparse:     expected unsigned int const 
*__gu_addr
   drivers/tty/vt/keyboard.c:1767:21: sparse:     got unsigned int [noderef] 
__user *
   drivers/tty/vt/keyboard.c:1767:21: sparse: sparse: incorrect type in 
argument 1 (different address spaces) @@     expected void const volatile 
[noderef] __user * @@     got unsigned int const *__gu_addr @@
   drivers/tty/vt/keyboard.c:1767:21: sparse:     expected void const volatile 
[noderef] __user *
   drivers/tty/vt/keyboard.c:1767:21: sparse:     got unsigned int const 
*__gu_addr
--
>> drivers/tty/vt/vt.c:4210:13: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected char const *__gu_addr @@     got 
>> char [noderef] __user * @@
   drivers/tty/vt/vt.c:4210:13: sparse:     expected char const *__gu_addr
>> drivers/tty/vt/vt.c:4210:13: sparse:     got char [noderef] __user *
>> drivers/tty/vt/vt.c:4210:13: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got char const *__gu_addr @@
>> drivers/tty/vt/vt.c:4210:13: sparse:     expected void const volatile 
>> [noderef] __user *
   drivers/tty/vt/vt.c:4210:13: sparse:     got char const *__gu_addr
   drivers/tty/vt/vt.c:233:5: sparse: sparse: symbol 'console_blank_hook' was 
not declared. Should it be static?
   drivers/tty/vt/vt.c:2901:19: sparse: sparse: symbol 'console_driver' was not 
declared. Should it be static?
>> drivers/tty/vt/vt.c:3057:13: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected char const *__gu_addr @@     got 
>> char [noderef] __user *p @@
   drivers/tty/vt/vt.c:3057:13: sparse:     expected char const *__gu_addr
>> drivers/tty/vt/vt.c:3057:13: sparse:     got char [noderef] __user *p
   drivers/tty/vt/vt.c:3057:13: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got char const *__gu_addr @@
   drivers/tty/vt/vt.c:3057:13: sparse:     expected void const volatile 
[noderef] __user *
   drivers/tty/vt/vt.c:3057:13: sparse:     got char const *__gu_addr
   drivers/tty/vt/vt.c:3110:37: sparse: sparse: incorrect type in initializer 
(different address spaces) @@     expected char const *__gu_addr @@     got 
char [noderef] __user * @@
   drivers/tty/vt/vt.c:3110:37: sparse:     expected char const *__gu_addr
   drivers/tty/vt/vt.c:3110:37: sparse:     got char [noderef] __user *
   drivers/tty/vt/vt.c:3110:37: sparse: sparse: incorrect type in argument 1 
(different address spaces) @@     expected void const volatile [noderef] __user 
* @@     got char const *__gu_addr @@
   drivers/tty/vt/vt.c:3110:37: sparse:     expected void const volatile 
[noderef] __user *
   drivers/tty/vt/vt.c:3110:37: sparse:     got char const *__gu_addr
>> drivers/tty/vt/vt.c:3123:29: sparse: sparse: incorrect type in initializer 
>> (different address spaces) @@     expected signed int const *__gu_addr @@    
>>  got signed int [noderef] [usertype] __user * @@
   drivers/tty/vt/vt.c:3123:29: sparse:     expected signed int const *__gu_addr
>> drivers/tty/vt/vt.c:3123:29: sparse:     got signed int [noderef] [usertype] 
>> __user *
>> drivers/tty/vt/vt.c:3123:29: sparse: sparse: incorrect type in argument 1 
>> (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got signed int const *__gu_addr @@
   drivers/tty/vt/vt.c:3123:29: sparse:     expected void const volatile 
[noderef] __user *
   drivers/tty/vt/vt.c:3123:29: sparse:     got signed int const *__gu_addr
   drivers/tty/vt/vt.c:2942:13: sparse: sparse: context imbalance in 
'vt_console_print' - wrong count at exit
--
>> drivers/tty/vt/vt_ioctl.c:839:21: sparse: sparse: incorrect type in 
>> initializer (different address spaces) @@     expected unsigned short const 
>> *__gu_addr @@     got unsigned short [noderef] __user * @@
   drivers/tty/vt/vt_ioctl.c:839:21: sparse:     expected unsigned short const 
*__gu_addr
>> drivers/tty/vt/vt_ioctl.c:839:21: sparse:     got unsigned short [noderef] 
>> __user *
>> drivers/tty/vt/vt_ioctl.c:839:21: sparse: sparse: incorrect type in argument 
>> 1 (different address spaces) @@     expected void const volatile [noderef] 
>> __user * @@     got unsigned short const *__gu_addr @@
>> drivers/tty/vt/vt_ioctl.c:839:21: sparse:     expected void const volatile 
>> [noderef] __user *
   drivers/tty/vt/vt_ioctl.c:839:21: sparse:     got unsigned short const 
*__gu_addr
   drivers/tty/vt/vt_ioctl.c:840:21: sparse: sparse: incorrect type in 
initializer (different address spaces) @@     expected unsigned short const 
*__gu_addr @@     got unsigned short [noderef] __user * @@
   drivers/tty/vt/vt_ioctl.c:840:21: sparse:     expected unsigned short const 
*__gu_addr
   drivers/tty/vt/vt_ioctl.c:840:21: sparse:     got unsigned short [noderef] 
__user *
   drivers/tty/vt/vt_ioctl.c:840:21: sparse: sparse: incorrect type in argument 
1 (different address spaces) @@     expected void const volatile [noderef] 
__user * @@     got unsigned short const *__gu_addr @@
   drivers/tty/vt/vt_ioctl.c:840:21: sparse:     expected void const volatile 
[noderef] __user *
   drivers/tty/vt/vt_ioctl.c:840:21: sparse:     got unsigned short const 
*__gu_addr

vim +551 drivers/misc/mic/vop/vop_main.c

c1becd2849681e Ashutosh Dixit     2016-02-08  548  
ba01cea2be8872 Vincent Whitchurch 2019-02-22  549  static struct _vop_vdev 
*vop_dc_to_vdev(struct mic_device_ctrl *dc)
ba01cea2be8872 Vincent Whitchurch 2019-02-22  550  {
ba01cea2be8872 Vincent Whitchurch 2019-02-22 @551       return (struct 
_vop_vdev *)(unsigned long)readq(&dc->vdev);
ba01cea2be8872 Vincent Whitchurch 2019-02-22  552  }
ba01cea2be8872 Vincent Whitchurch 2019-02-22  553  

:::::: The code at line 551 was first introduced by commit
:::::: ba01cea2be8872591452e84acebede388c91249b mic: vop: Cast pointers to 
unsigned long

:::::: TO: Vincent Whitchurch <[email protected]>
:::::: CC: Greg Kroah-Hartman <[email protected]>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

Reply via email to