tree: https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git lam head: 9cc7511961c632c50ba6b34edf7bc23c5361fbd2 commit: 3ec4ab922483bc46ceed4c4bd4007a0a3201c384 [5/18] x86/uaccess: Provide untagged_addr() and remove tags before address check config: x86_64-randconfig-s053-20221024 (attached as .config) 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=3ec4ab922483bc46ceed4c4bd4007a0a3201c384 git remote add kas https://git.kernel.org/pub/scm/linux/kernel/git/kas/linux.git git fetch --no-tags kas lam git checkout 3ec4ab922483bc46ceed4c4bd4007a0a3201c384 # 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/gpu/drm/i915/ drivers/hid/ drivers/iommu/ drivers/misc/genwqe/ drivers/usb/mon/ drivers/video/fbdev/aty/ sound/core/ sound/firewire/motu/ sound/hda/ sound/pci/asihpi/ sound/pci/emu10k1/ sound/pci/hda/ sound/pci/lola/ sound/synth/emux/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) >> drivers/hid/hid-roccat.c:397:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ drivers/hid/hid-roccat.c:397:21: sparse: expected int [noderef] __user *__ptr_clean drivers/hid/hid-roccat.c:397:21: sparse: got int * -- >> sound/core/hwdep.c:243:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ sound/core/hwdep.c:243:24: sparse: expected int [noderef] __user *__ptr_clean sound/core/hwdep.c:243:24: sparse: got int * sound/core/hwdep.c:273:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ sound/core/hwdep.c:273:29: sparse: expected int [noderef] __user *__ptr_clean sound/core/hwdep.c:273:29: sparse: got int * sound/core/hwdep.c:292:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ sound/core/hwdep.c:292:29: sparse: expected int [noderef] __user *__ptr_clean sound/core/hwdep.c:292:29: sparse: got int * >> sound/core/hwdep.c:302:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/core/hwdep.c:302:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/core/hwdep.c:302:29: sparse: got unsigned int * -- >> sound/hda/hdmi_chmap.c:678:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/hda/hdmi_chmap.c:678:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/hda/hdmi_chmap.c:678:13: sparse: got unsigned int * sound/hda/hdmi_chmap.c:710:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/hda/hdmi_chmap.c:710:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/hda/hdmi_chmap.c:710:29: sparse: got unsigned int * sound/hda/hdmi_chmap.c:711:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/hda/hdmi_chmap.c:711:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/hda/hdmi_chmap.c:711:29: sparse: got unsigned int * sound/hda/hdmi_chmap.c:732:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/hda/hdmi_chmap.c:732:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/hda/hdmi_chmap.c:732:13: sparse: got unsigned int * -- >> drivers/hid/usbhid/hiddev.c:573:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ drivers/hid/usbhid/hiddev.c:573:13: sparse: expected int [noderef] __user *__ptr_clean drivers/hid/usbhid/hiddev.c:573:13: sparse: got int * drivers/hid/usbhid/hiddev.c:621:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ drivers/hid/usbhid/hiddev.c:621:21: sparse: expected int [noderef] __user *__ptr_clean drivers/hid/usbhid/hiddev.c:621:21: sparse: got int * drivers/hid/usbhid/hiddev.c:660:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ drivers/hid/usbhid/hiddev.c:660:21: sparse: expected int [noderef] __user *__ptr_clean drivers/hid/usbhid/hiddev.c:660:21: sparse: got int * drivers/hid/usbhid/hiddev.c:668:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ drivers/hid/usbhid/hiddev.c:668:29: sparse: expected int [noderef] __user *__ptr_clean drivers/hid/usbhid/hiddev.c:668:29: sparse: got int * -- >> drivers/gpu/drm/i915/i915_perf.c:3643:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/i915_perf.c:3643:23: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_perf.c:3643:23: sparse: got unsigned long long * drivers/gpu/drm/i915/i915_perf.c:3647:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/i915_perf.c:3647:23: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_perf.c:3647:23: sparse: got unsigned long long * >> drivers/gpu/drm/i915/i915_perf.c:4064:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/i915_perf.c:4064:23: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_perf.c:4064:23: sparse: got unsigned int * drivers/gpu/drm/i915/i915_perf.c:4075:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/i915_perf.c:4075:23: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_perf.c:4075:23: sparse: got unsigned int * -- >> drivers/gpu/drm/i915/i915_getparam.c:183:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ drivers/gpu/drm/i915/i915_getparam.c:183:13: sparse: expected int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_getparam.c:183:13: sparse: got int * -- >> drivers/gpu/drm/i915/i915_user_extensions.c:31:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/i915_user_extensions.c:31:23: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_user_extensions.c:31:23: sparse: got unsigned int * drivers/gpu/drm/i915/i915_user_extensions.c:36:31: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/i915_user_extensions.c:36:31: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_user_extensions.c:36:31: sparse: got unsigned int * drivers/gpu/drm/i915/i915_user_extensions.c:41:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/i915_user_extensions.c:41:21: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_user_extensions.c:41:21: sparse: got unsigned int * >> drivers/gpu/drm/i915/i915_user_extensions.c:53:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/i915_user_extensions.c:53:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_user_extensions.c:53:21: sparse: got unsigned long long * -- >> drivers/gpu/drm/i915/gem/i915_gem_context.c:412:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:412:13: sparse: expected unsigned short [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:412:13: sparse: got unsigned short * drivers/gpu/drm/i915/gem/i915_gem_context.c:428:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:428:13: sparse: expected unsigned short [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:428:13: sparse: got unsigned short * >> drivers/gpu/drm/i915/gem/i915_gem_context.c:431:15: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:431:15: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:431:15: sparse: got unsigned int * >> drivers/gpu/drm/i915/gem/i915_gem_context.c:435:15: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:435:15: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:435:15: sparse: got unsigned long long * drivers/gpu/drm/i915/gem/i915_gem_context.c:503:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:503:13: sparse: expected unsigned short [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:503:13: sparse: got unsigned short * drivers/gpu/drm/i915/gem/i915_gem_context.c:525:15: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:525:15: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:525:15: sparse: got unsigned long long * drivers/gpu/drm/i915/gem/i915_gem_context.c:530:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:530:23: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:530:23: sparse: got unsigned long long * drivers/gpu/drm/i915/gem/i915_gem_context.c:553:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:553:13: sparse: expected unsigned short [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:553:13: sparse: got unsigned short * drivers/gpu/drm/i915/gem/i915_gem_context.c:591:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:591:13: sparse: expected unsigned short [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:591:13: sparse: got unsigned short * drivers/gpu/drm/i915/gem/i915_gem_context.c:594:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:594:13: sparse: expected unsigned short [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:594:13: sparse: got unsigned short * drivers/gpu/drm/i915/gem/i915_gem_context.c:597:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:597:13: sparse: expected unsigned short [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:597:13: sparse: got unsigned short * drivers/gpu/drm/i915/gem/i915_gem_context.c:619:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:619:13: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:619:13: sparse: got unsigned long long * drivers/gpu/drm/i915/gem/i915_gem_context.c:628:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:628:23: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:628:23: sparse: got unsigned long long * drivers/gpu/drm/i915/gem/i915_gem_context.c:796:14: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/gem/i915_gem_context.c:796:14: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/gem/i915_gem_context.c:796:14: sparse: got unsigned long long * -- >> drivers/gpu/drm/i915/i915_query.c:258:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/i915_query.c:258:13: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_query.c:258:13: sparse: got unsigned int * >> drivers/gpu/drm/i915/i915_query.c:285:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/i915_query.c:285:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_query.c:285:21: sparse: got unsigned long long * drivers/gpu/drm/i915/i915_query.c:388:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/gpu/drm/i915/i915_query.c:388:13: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_query.c:388:13: sparse: got unsigned int * drivers/gpu/drm/i915/i915_query.c:428:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/gpu/drm/i915/i915_query.c:428:13: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_query.c:428:13: sparse: got unsigned long long * >> drivers/gpu/drm/i915/i915_query.c:597:43: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected signed int [noderef] __user *__ptr_clean @@ got signed int * @@ drivers/gpu/drm/i915/i915_query.c:597:43: sparse: expected signed int [noderef] __user *__ptr_clean drivers/gpu/drm/i915/i915_query.c:597:43: sparse: got signed int * -- >> sound/firewire/motu/motu-hwdep.c:78:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/firewire/motu/motu-hwdep.c:78:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/firewire/motu/motu-hwdep.c:78:29: sparse: got unsigned int * sound/firewire/motu/motu-hwdep.c:92:9: sparse: sparse: context imbalance in 'hwdep_read' - different lock contexts for basic block -- >> drivers/misc/genwqe/card_dev.c:1073:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int enum genwqe_card_state [noderef] __user *__ptr_clean @@ got unsigned int enum genwqe_card_state * @@ drivers/misc/genwqe/card_dev.c:1073:17: sparse: expected unsigned int enum genwqe_card_state [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1073:17: sparse: got unsigned int enum genwqe_card_state * >> drivers/misc/genwqe/card_dev.c:1080:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1080:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1080:21: sparse: got unsigned long long * drivers/misc/genwqe/card_dev.c:1087:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1087:17: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1087:17: sparse: got unsigned long long * drivers/misc/genwqe/card_dev.c:1100:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1100:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1100:21: sparse: got unsigned long long * drivers/misc/genwqe/card_dev.c:1106:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1106:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1106:21: sparse: got unsigned long long * drivers/misc/genwqe/card_dev.c:1116:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1116:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1116:21: sparse: got unsigned long long * drivers/misc/genwqe/card_dev.c:1123:17: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1123:17: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1123:17: sparse: got unsigned long long * drivers/misc/genwqe/card_dev.c:1136:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1136:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1136:21: sparse: got unsigned long long * drivers/misc/genwqe/card_dev.c:1142:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned long long [noderef] __user *__ptr_clean @@ got unsigned long long * @@ drivers/misc/genwqe/card_dev.c:1142:21: sparse: expected unsigned long long [noderef] __user *__ptr_clean drivers/misc/genwqe/card_dev.c:1142:21: sparse: got unsigned long long * -- >> drivers/usb/mon/mon_bin.c:928:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/usb/mon/mon_bin.c:928:21: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/usb/mon/mon_bin.c:928:21: sparse: got unsigned int * drivers/usb/mon/mon_bin.c:1094:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/usb/mon/mon_bin.c:1094:29: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/usb/mon/mon_bin.c:1094:29: sparse: got unsigned int * drivers/usb/mon/mon_bin.c:1100:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/usb/mon/mon_bin.c:1100:21: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/usb/mon/mon_bin.c:1100:21: sparse: got unsigned int * drivers/usb/mon/mon_bin.c:1118:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/usb/mon/mon_bin.c:1118:21: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/usb/mon/mon_bin.c:1118:21: sparse: got unsigned int * drivers/usb/mon/mon_bin.c:1120:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/usb/mon/mon_bin.c:1120:21: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/usb/mon/mon_bin.c:1120:21: sparse: got unsigned int * -- >> sound/synth/emux/emux_hwdep.c:86:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/synth/emux/emux_hwdep.c:86:24: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/synth/emux/emux_hwdep.c:86:24: sparse: got unsigned int * sound/synth/emux/emux_hwdep.c:98:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/synth/emux/emux_hwdep.c:98:32: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/synth/emux/emux_hwdep.c:98:32: sparse: got unsigned int * -- >> sound/pci/asihpi/hpioctl.c:118:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *[noderef] __user *__ptr_clean @@ got void [noderef] __user ** @@ sound/pci/asihpi/hpioctl.c:118:13: sparse: expected void [noderef] __user *[noderef] __user *__ptr_clean sound/pci/asihpi/hpioctl.c:118:13: sparse: got void [noderef] __user ** sound/pci/asihpi/hpioctl.c:119:20: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void [noderef] __user *[noderef] __user *__ptr_clean @@ got void [noderef] __user ** @@ sound/pci/asihpi/hpioctl.c:119:20: sparse: expected void [noderef] __user *[noderef] __user *__ptr_clean sound/pci/asihpi/hpioctl.c:119:20: sparse: got void [noderef] __user ** >> sound/pci/asihpi/hpioctl.c:125:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ sound/pci/asihpi/hpioctl.c:125:13: sparse: expected unsigned short [noderef] __user *__ptr_clean sound/pci/asihpi/hpioctl.c:125:13: sparse: got unsigned short * sound/pci/asihpi/hpioctl.c:144:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned short [noderef] __user *__ptr_clean @@ got unsigned short * @@ sound/pci/asihpi/hpioctl.c:144:13: sparse: expected unsigned short [noderef] __user *__ptr_clean sound/pci/asihpi/hpioctl.c:144:13: sparse: got unsigned short * -- >> drivers/video/fbdev/aty/aty128fb.c:2314:22: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/video/fbdev/aty/aty128fb.c:2314:22: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/video/fbdev/aty/aty128fb.c:2314:22: sparse: got unsigned int * drivers/video/fbdev/aty/aty128fb.c:2328:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ drivers/video/fbdev/aty/aty128fb.c:2328:24: sparse: expected unsigned int [noderef] __user *__ptr_clean drivers/video/fbdev/aty/aty128fb.c:2328:24: sparse: got unsigned int * -- >> sound/pci/emu10k1/emufx.c:518:26: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:518:26: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:518:26: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:534:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:534:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:534:21: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:554:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:554:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:554:29: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:555:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:555:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:555:29: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:585:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:585:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:585:21: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:586:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:586:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:586:21: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:605:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:605:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:605:29: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:606:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:606:29: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:606:29: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:623:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:623:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:623:21: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:626:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:626:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:626:21: sparse: got unsigned int * >> sound/pci/emu10k1/emufx.c:2560:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ sound/pci/emu10k1/emufx.c:2560:24: sparse: expected int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:2560:24: sparse: got int * sound/pci/emu10k1/emufx.c:2614:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:2614:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:2614:21: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:2652:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:2652:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:2652:21: sparse: got unsigned int * sound/pci/emu10k1/emufx.c:2671:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/emu10k1/emufx.c:2671:21: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/emu10k1/emufx.c:2671:21: sparse: got unsigned int * -- >> sound/pci/hda/hda_hwdep.c:26:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/hda/hda_hwdep.c:26:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/hda/hda_hwdep.c:26:13: sparse: got unsigned int * sound/pci/hda/hda_hwdep.c:30:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/hda/hda_hwdep.c:30:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/hda/hda_hwdep.c:30:13: sparse: got unsigned int * sound/pci/hda/hda_hwdep.c:40:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/hda/hda_hwdep.c:40:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/hda/hda_hwdep.c:40:13: sparse: got unsigned int * sound/pci/hda/hda_hwdep.c:52:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/hda/hda_hwdep.c:52:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/hda/hda_hwdep.c:52:13: sparse: got unsigned int * >> sound/pci/hda/hda_hwdep.c:68:24: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected int [noderef] __user *__ptr_clean @@ got int * @@ sound/pci/hda/hda_hwdep.c:68:24: sparse: expected int [noderef] __user *__ptr_clean sound/pci/hda/hda_hwdep.c:68:24: sparse: got int * -- >> sound/pci/lola/lola_mixer.c:561:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/lola/lola_mixer.c:561:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/lola/lola_mixer.c:561:13: sparse: got unsigned int * sound/pci/lola/lola_mixer.c:563:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/lola/lola_mixer.c:563:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/lola/lola_mixer.c:563:13: sparse: got unsigned int * sound/pci/lola/lola_mixer.c:565:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/lola/lola_mixer.c:565:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/lola/lola_mixer.c:565:13: sparse: got unsigned int * sound/pci/lola/lola_mixer.c:567:13: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned int [noderef] __user *__ptr_clean @@ got unsigned int * @@ sound/pci/lola/lola_mixer.c:567:13: sparse: expected unsigned int [noderef] __user *__ptr_clean sound/pci/lola/lola_mixer.c:567:13: sparse: got unsigned int * vim +397 drivers/hid/hid-roccat.c 206f5f2fcb5ff5 Stefan Achatz 2010-05-19 379 8211e46004518c Stefan Achatz 2011-01-30 380 static long roccat_ioctl(struct file *file, unsigned int cmd, unsigned long arg) 8211e46004518c Stefan Achatz 2011-01-30 381 { 496ad9aa8ef448 Al Viro 2013-01-23 382 struct inode *inode = file_inode(file); 8211e46004518c Stefan Achatz 2011-01-30 383 struct roccat_device *device; 8211e46004518c Stefan Achatz 2011-01-30 384 unsigned int minor = iminor(inode); 8211e46004518c Stefan Achatz 2011-01-30 385 long retval = 0; 8211e46004518c Stefan Achatz 2011-01-30 386 8211e46004518c Stefan Achatz 2011-01-30 387 mutex_lock(&devices_lock); 8211e46004518c Stefan Achatz 2011-01-30 388 8211e46004518c Stefan Achatz 2011-01-30 389 device = devices[minor]; 8211e46004518c Stefan Achatz 2011-01-30 390 if (!device) { 8211e46004518c Stefan Achatz 2011-01-30 391 retval = -ENODEV; 8211e46004518c Stefan Achatz 2011-01-30 392 goto out; 8211e46004518c Stefan Achatz 2011-01-30 393 } 8211e46004518c Stefan Achatz 2011-01-30 394 8211e46004518c Stefan Achatz 2011-01-30 395 switch (cmd) { 8211e46004518c Stefan Achatz 2011-01-30 396 case ROCCATIOCGREPSIZE: 8211e46004518c Stefan Achatz 2011-01-30 @397 if (put_user(device->report_size, (int __user *)arg)) 8211e46004518c Stefan Achatz 2011-01-30 398 retval = -EFAULT; 8211e46004518c Stefan Achatz 2011-01-30 399 break; 8211e46004518c Stefan Achatz 2011-01-30 400 default: 8211e46004518c Stefan Achatz 2011-01-30 401 retval = -ENOTTY; 8211e46004518c Stefan Achatz 2011-01-30 402 } 8211e46004518c Stefan Achatz 2011-01-30 403 out: 8211e46004518c Stefan Achatz 2011-01-30 404 mutex_unlock(&devices_lock); 8211e46004518c Stefan Achatz 2011-01-30 405 return retval; 8211e46004518c Stefan Achatz 2011-01-30 406 } 8211e46004518c Stefan Achatz 2011-01-30 407 :::::: The code at line 397 was first introduced by commit :::::: 8211e46004518c977f70f2661da961d5ba617399 HID: roccat: Add ioctl command to retreive report size from chardev :::::: TO: Stefan Achatz :::::: CC: Jiri Kosina -- 0-DAY CI Kernel Test Service https://01.org/lkp