All of lore.kernel.org
 help / color / mirror / Atom feed
* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2021-04-08 14:18 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2021-04-08 14:18 UTC (permalink / raw)
  To: Luc Van Oostenryck; +Cc: kbuild-all, linux-kernel, Miguel Ojeda

[-- Attachment #1: Type: text/plain, Size: 29912 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   454859c552da78b0f587205d308401922b56863e
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   7 months ago
config: sh-randconfig-s031-20210408 (attached as .config)
compiler: sh4-linux-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.3-279-g6d5d9b42-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # 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=sh 

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


sparse warnings: (new ones prefixed by >>)
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
>> arch/sh/kernel/ftrace.c:50:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned char * @@
   arch/sh/kernel/ftrace.c:50:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/ftrace.c:50:9: sparse:     got unsigned char *
   arch/sh/kernel/ftrace.c:57:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned char * @@
   arch/sh/kernel/ftrace.c:57:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/ftrace.c:57:9: sparse:     got unsigned char *
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
   arch/sh/mm/init.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/boards/board-magicpanelr2.c:39:13: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:39:13: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:39:13: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:44:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:44:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:44:21: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:66:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:66:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:66:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:68:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:68:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:68:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:72:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:72:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:72:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:74:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:74:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:74:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:78:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:78:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:78:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:80:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:80:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:80:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:84:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:84:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:84:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:86:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:86:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:86:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:90:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:90:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:90:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:92:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:100:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:100:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:100:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:105:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:105:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:105:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:110:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:110:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:110:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:115:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:115:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:115:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:120:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:120:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:120:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:125:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:125:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:125:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:130:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:130:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:130:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:135:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:135:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:135:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:140:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:140:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:140:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:145:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:145:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:145:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:150:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:150:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:150:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:156:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:156:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:156:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:164:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:164:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:164:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:173:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:173:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:173:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:174:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:174:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:174:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:191:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:191:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:191:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:196:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:196:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:196:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:201:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:201:9: sparse:     expected void const volatile [noderef] __iomem *ptr
--
   fs/exec.c:418:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected char const [noderef] __user *const *__gu_addr @@     got char const [noderef] __user *const [noderef] __user * @@
   fs/exec.c:418:13: sparse:     expected char const [noderef] __user *const *__gu_addr
   fs/exec.c:418:13: sparse:     got char const [noderef] __user *const [noderef] __user *
   fs/exec.c:418:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got char const [noderef] __user *const *__gu_addr @@
   fs/exec.c:418:13: sparse:     expected void const volatile [noderef] __user *ptr
   fs/exec.c:418:13: sparse:     got char const [noderef] __user *const *__gu_addr
   fs/exec.c:419:31: sparse: sparse: incorrect type in return expression (different address spaces) @@     expected char const [noderef] __user * @@     got void * @@
   fs/exec.c:419:31: sparse:     expected char const [noderef] __user *
   fs/exec.c:419:31: sparse:     got void *
   fs/exec.c:1156:48: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sighand_struct *oldsighand @@     got struct sighand_struct [noderef] __rcu *sighand @@
   fs/exec.c:1156:48: sparse:     expected struct sighand_struct *oldsighand
   fs/exec.c:1156:48: sparse:     got struct sighand_struct [noderef] __rcu *sighand
   fs/exec.c:1263:56: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct task_struct *parent @@     got struct task_struct [noderef] __rcu *parent @@
   fs/exec.c:1263:56: sparse:     expected struct task_struct *parent
   fs/exec.c:1263:56: sparse:     got struct task_struct [noderef] __rcu *parent
   fs/exec.c:1298:47: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sighand_struct *oldsighand @@     got struct sighand_struct [noderef] __rcu *sighand @@
   fs/exec.c:1298:47: sparse:     expected struct sighand_struct *oldsighand
   fs/exec.c:1298:47: sparse:     got struct sighand_struct [noderef] __rcu *sighand
   fs/exec.c:1851:70: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct task_struct *tsk @@     got struct task_struct [noderef] __rcu *parent @@
   fs/exec.c:1851:70: sparse:     expected struct task_struct *tsk
   fs/exec.c:1851:70: sparse:     got struct task_struct [noderef] __rcu *parent
   fs/exec.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/kernel/cpu/sh3/serial-sh7720.c:16:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:16:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:16:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:17:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:17:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:17:25: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:20:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:20:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:20:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:21:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:21:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:21:25: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:26:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:26:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:26:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:27:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:27:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:27:25: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:30:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:30:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:30:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:31:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:31:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:31:25: sparse:     got unsigned long
--
>> arch/sh/kernel/cpu/sh3/clock-sh7710.c:26:31: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:26:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:26:31: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:35:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:35:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:35:20: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:45:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:45:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:45:20: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:55:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:55:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:55:20: sparse:     got unsigned int

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a06 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5 arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9e arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 16189 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2021-04-08 14:18 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2021-04-08 14:18 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 30186 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   454859c552da78b0f587205d308401922b56863e
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   7 months ago
config: sh-randconfig-s031-20210408 (attached as .config)
compiler: sh4-linux-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.3-279-g6d5d9b42-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # 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=sh 

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


sparse warnings: (new ones prefixed by >>)
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
>> arch/sh/kernel/ftrace.c:50:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned char * @@
   arch/sh/kernel/ftrace.c:50:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/ftrace.c:50:9: sparse:     got unsigned char *
   arch/sh/kernel/ftrace.c:57:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned char * @@
   arch/sh/kernel/ftrace.c:57:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/ftrace.c:57:9: sparse:     got unsigned char *
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
   arch/sh/mm/init.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/boards/board-magicpanelr2.c:39:13: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:39:13: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:39:13: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:44:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:44:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:44:21: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:54:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:59:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:66:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:66:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:66:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:68:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:68:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:68:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:72:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:72:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:72:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:74:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:74:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:74:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:78:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:78:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:78:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:80:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:80:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:80:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:84:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:84:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:84:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:86:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:86:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:86:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:90:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:90:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:90:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:92:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:100:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:100:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:100:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:105:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:105:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:105:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:110:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:110:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:110:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:115:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:115:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:115:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:120:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:120:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:120:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:125:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:125:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:125:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:130:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:130:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:130:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:135:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:135:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:135:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:140:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:140:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:140:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:145:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:145:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:145:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:150:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:150:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:150:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:156:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:156:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:156:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:164:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:164:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:164:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:173:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:173:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:173:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:174:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:174:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:174:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:191:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:191:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:191:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:196:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:196:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/boards/board-magicpanelr2.c:196:9: sparse:     got unsigned long
   arch/sh/boards/board-magicpanelr2.c:201:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/boards/board-magicpanelr2.c:201:9: sparse:     expected void const volatile [noderef] __iomem *ptr
--
   fs/exec.c:418:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected char const [noderef] __user *const *__gu_addr @@     got char const [noderef] __user *const [noderef] __user * @@
   fs/exec.c:418:13: sparse:     expected char const [noderef] __user *const *__gu_addr
   fs/exec.c:418:13: sparse:     got char const [noderef] __user *const [noderef] __user *
   fs/exec.c:418:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got char const [noderef] __user *const *__gu_addr @@
   fs/exec.c:418:13: sparse:     expected void const volatile [noderef] __user *ptr
   fs/exec.c:418:13: sparse:     got char const [noderef] __user *const *__gu_addr
   fs/exec.c:419:31: sparse: sparse: incorrect type in return expression (different address spaces) @@     expected char const [noderef] __user * @@     got void * @@
   fs/exec.c:419:31: sparse:     expected char const [noderef] __user *
   fs/exec.c:419:31: sparse:     got void *
   fs/exec.c:1156:48: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sighand_struct *oldsighand @@     got struct sighand_struct [noderef] __rcu *sighand @@
   fs/exec.c:1156:48: sparse:     expected struct sighand_struct *oldsighand
   fs/exec.c:1156:48: sparse:     got struct sighand_struct [noderef] __rcu *sighand
   fs/exec.c:1263:56: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected struct task_struct *parent @@     got struct task_struct [noderef] __rcu *parent @@
   fs/exec.c:1263:56: sparse:     expected struct task_struct *parent
   fs/exec.c:1263:56: sparse:     got struct task_struct [noderef] __rcu *parent
   fs/exec.c:1298:47: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected struct sighand_struct *oldsighand @@     got struct sighand_struct [noderef] __rcu *sighand @@
   fs/exec.c:1298:47: sparse:     expected struct sighand_struct *oldsighand
   fs/exec.c:1298:47: sparse:     got struct sighand_struct [noderef] __rcu *sighand
   fs/exec.c:1851:70: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected struct task_struct *tsk @@     got struct task_struct [noderef] __rcu *parent @@
   fs/exec.c:1851:70: sparse:     expected struct task_struct *tsk
   fs/exec.c:1851:70: sparse:     got struct task_struct [noderef] __rcu *parent
   fs/exec.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/kernel/cpu/sh3/serial-sh7720.c:16:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:16:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:16:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:17:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:17:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:17:25: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:20:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:20:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:20:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:21:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:21:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:21:25: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:26:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:26:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:26:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:27:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:27:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:27:25: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:30:32: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:30:32: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:30:32: sparse:     got unsigned long
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:31:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:31:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh7720.c:31:25: sparse:     got unsigned long
--
>> arch/sh/kernel/cpu/sh3/clock-sh7710.c:26:31: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:26:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:26:31: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:35:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:35:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:35:20: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:45:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:45:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:45:20: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:55:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:55:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh7710.c:55:20: sparse:     got unsigned int

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a06 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5 arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9e arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 16189 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2021-08-05 19:22 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2021-08-05 19:22 UTC (permalink / raw)
  To: Luc Van Oostenryck; +Cc: kbuild-all, linux-kernel, Miguel Ojeda

[-- Attachment #1: Type: text/plain, Size: 25283 bytes --]

Hi Luc,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   251a1524293d0a90c4d5060f65f42a3016280049
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   11 months ago
config: sh-randconfig-s032-20210805 (attached as .config)
compiler: sh4-linux-gcc (GCC) 10.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.3-348-gf0e6938b-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=sh 

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


sparse warnings: (new ones prefixed by >>)
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
   arch/sh/mm/init.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
   drivers/android/binder.c:3613:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/android/binder.c:3613:21: sparse:     expected unsigned int const *__gu_addr
   drivers/android/binder.c:3613:21: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/android/binder.c:3613:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/android/binder.c:3613:21: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3613:21: sparse:     got unsigned int const *__gu_addr
   drivers/android/binder.c:3633:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/android/binder.c:3633:29: sparse:     expected unsigned int const *__gu_addr
   drivers/android/binder.c:3633:29: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/android/binder.c:3633:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/android/binder.c:3633:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3633:29: sparse:     got unsigned int const *__gu_addr
   drivers/android/binder.c:3699:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3699:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3699:29: sparse:     got unsigned long long [noderef] [usertype] __user *
>> drivers/android/binder.c:3699:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3699:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3699:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3702:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3702:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3702:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3702:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3702:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3702:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3771:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3771:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3771:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3771:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3771:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3771:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3868:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/android/binder.c:3868:29: sparse:     expected unsigned int const *__gu_addr
   drivers/android/binder.c:3868:29: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/android/binder.c:3868:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/android/binder.c:3868:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3868:29: sparse:     got unsigned int const *__gu_addr
   drivers/android/binder.c:3871:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3871:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3871:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3871:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3871:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3871:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3990:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3990:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3990:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3990:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3990:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3990:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:4824:24: sparse: sparse: incorrect type in return expression (different base types) @@     expected restricted __poll_t @@     got int @@
   drivers/android/binder.c:4824:24: sparse:     expected restricted __poll_t
   drivers/android/binder.c:4824:24: sparse:     got int
--
   drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int const *__gu_addr
--
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     got unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     got unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     got unsigned int const *__gu_addr
--
>> arch/sh/drivers/dma/dma-sh.c:111:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:111:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:111:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:117:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:117:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:117:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:151:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:151:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:151:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:162:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:162:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:162:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:168:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:168:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:168:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:186:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:186:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:186:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:188:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:188:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:188:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:219:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:219:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:219:17: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:222:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:222:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:222:17: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:224:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:224:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:224:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:234:15: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:234:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:234:15: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:237:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:237:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:237:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:262:31: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:262:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:262:31: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:266:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:266:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:266:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:269:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:269:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:269:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:272:14: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:272:14: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:272:14: sparse:     got unsigned long

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a06 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5 arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9e arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 31131 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2021-08-05 19:22 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2021-08-05 19:22 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 25521 bytes --]

Hi Luc,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   251a1524293d0a90c4d5060f65f42a3016280049
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   11 months ago
config: sh-randconfig-s032-20210805 (attached as .config)
compiler: sh4-linux-gcc (GCC) 10.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.3-348-gf0e6938b-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=sh 

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


sparse warnings: (new ones prefixed by >>)
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
   arch/sh/mm/init.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
   drivers/android/binder.c:3613:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/android/binder.c:3613:21: sparse:     expected unsigned int const *__gu_addr
   drivers/android/binder.c:3613:21: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/android/binder.c:3613:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/android/binder.c:3613:21: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3613:21: sparse:     got unsigned int const *__gu_addr
   drivers/android/binder.c:3633:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/android/binder.c:3633:29: sparse:     expected unsigned int const *__gu_addr
   drivers/android/binder.c:3633:29: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/android/binder.c:3633:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/android/binder.c:3633:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3633:29: sparse:     got unsigned int const *__gu_addr
   drivers/android/binder.c:3699:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3699:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3699:29: sparse:     got unsigned long long [noderef] [usertype] __user *
>> drivers/android/binder.c:3699:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3699:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3699:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3702:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3702:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3702:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3702:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3702:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3702:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3771:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3771:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3771:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3771:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3771:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3771:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3868:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/android/binder.c:3868:29: sparse:     expected unsigned int const *__gu_addr
   drivers/android/binder.c:3868:29: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/android/binder.c:3868:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/android/binder.c:3868:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3868:29: sparse:     got unsigned int const *__gu_addr
   drivers/android/binder.c:3871:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3871:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3871:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3871:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3871:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3871:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:3990:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned long long const *__gu_addr @@     got unsigned long long [noderef] [usertype] __user * @@
   drivers/android/binder.c:3990:29: sparse:     expected unsigned long long const *__gu_addr
   drivers/android/binder.c:3990:29: sparse:     got unsigned long long [noderef] [usertype] __user *
   drivers/android/binder.c:3990:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long const *__gu_addr @@
   drivers/android/binder.c:3990:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/android/binder.c:3990:29: sparse:     got unsigned long long const *__gu_addr
   drivers/android/binder.c:4824:24: sparse: sparse: incorrect type in return expression (different base types) @@     expected restricted __poll_t @@     got int @@
   drivers/android/binder.c:4824:24: sparse:     expected restricted __poll_t
   drivers/android/binder.c:4824:24: sparse:     got int
--
   drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int const *__gu_addr
--
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_atomic_uapi.c:1341:21: sparse:     got unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_atomic_uapi.c:1358:21: sparse:     got unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     got unsigned int [noderef] [usertype] __user *
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_atomic_uapi.c:1371:29: sparse:     got unsigned int const *__gu_addr
--
>> arch/sh/drivers/dma/dma-sh.c:111:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:111:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:111:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:117:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:117:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:117:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:151:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:151:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:151:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:162:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:162:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:162:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:168:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:168:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:168:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:186:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:186:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:186:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:188:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:188:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:188:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:219:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:219:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:219:17: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:222:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:222:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:222:17: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:224:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:224:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:224:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:234:15: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:234:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:234:15: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:237:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:237:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:237:16: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:93:20: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:262:31: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:262:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:262:31: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:266:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:266:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:266:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:269:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:269:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:269:9: sparse:     got unsigned long
   arch/sh/drivers/dma/dma-sh.c:272:14: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/drivers/dma/dma-sh.c:272:14: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/drivers/dma/dma-sh.c:272:14: sparse:     got unsigned long

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a06 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5 arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9e arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 31131 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2020-12-16 11:51 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2020-12-16 11:51 UTC (permalink / raw)
  To: Luc Van Oostenryck; +Cc: kbuild-all, linux-kernel, Miguel Ojeda

[-- Attachment #1: Type: text/plain, Size: 36044 bytes --]

Hi Luc,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   d01e7f10dae29eba0f9ada82b65d24e035d5b2f9
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   4 months ago
config: sh-randconfig-s032-20201216 (attached as .config)
compiler: sh4-linux-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.3-184-g1b896707-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # 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=sh 

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


"sparse warnings: (new ones prefixed by >>)"
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
   arch/sh/kernel/setup.c: note: in included file:
>> arch/sh/include/asm/mmu_context.h:151:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context.h:151:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context.h:151:9: sparse:     got unsigned int
--
   arch/sh/kernel/disassemble.c:531:33: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short const [noderef] __user *__gu_addr @@     got unsigned short [usertype] * @@
   arch/sh/kernel/disassemble.c:531:33: sparse:     expected unsigned short const [noderef] __user *__gu_addr
   arch/sh/kernel/disassemble.c:531:33: sparse:     got unsigned short [usertype] *
>> arch/sh/kernel/disassemble.c:531:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned short [usertype] * @@
   arch/sh/kernel/disassemble.c:531:33: sparse:     expected void const volatile [noderef] __user *ptr
   arch/sh/kernel/disassemble.c:531:33: sparse:     got unsigned short [usertype] *
   arch/sh/kernel/disassemble.c:533:33: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const [noderef] __user *__gu_addr @@     got unsigned int [usertype] * @@
   arch/sh/kernel/disassemble.c:533:33: sparse:     expected unsigned int const [noderef] __user *__gu_addr
   arch/sh/kernel/disassemble.c:533:33: sparse:     got unsigned int [usertype] *
>> arch/sh/kernel/disassemble.c:533:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int [usertype] * @@
   arch/sh/kernel/disassemble.c:533:33: sparse:     expected void const volatile [noderef] __user *ptr
   arch/sh/kernel/disassemble.c:533:33: sparse:     got unsigned int [usertype] *
   arch/sh/kernel/disassemble.c:560:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short const [noderef] __user *__gu_addr @@     got unsigned short * @@
   arch/sh/kernel/disassemble.c:560:21: sparse:     expected unsigned short const [noderef] __user *__gu_addr
   arch/sh/kernel/disassemble.c:560:21: sparse:     got unsigned short *
>> arch/sh/kernel/disassemble.c:560:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned short * @@
   arch/sh/kernel/disassemble.c:560:21: sparse:     expected void const volatile [noderef] __user *ptr
   arch/sh/kernel/disassemble.c:560:21: sparse:     got unsigned short *
--
>> arch/sh/kernel/cpu/adc.c:22:15: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:22:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:22:15: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:24:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:24:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:24:9: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:27:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:27:23: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:27:23: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:31:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:31:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:31:9: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:33:19: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:33:19: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:33:19: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:34:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:34:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:34:17: sparse:     got unsigned int
--
   arch/sh/mm/init.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
>> arch/sh/kernel/cpu/sh3/clock-sh3.c:28:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:28:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:28:21: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh3.c:40:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:40:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:40:21: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh3.c:52:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:52:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:52:21: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh3.c:64:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:64:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:64:21: sparse:     got unsigned int
--
   fs/hfsplus/ioctl.c:42:50: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int @@     got restricted __be32 [usertype] @@
   fs/hfsplus/ioctl.c:42:50: sparse:     expected unsigned int
   fs/hfsplus/ioctl.c:42:50: sparse:     got restricted __be32 [usertype]
   fs/hfsplus/ioctl.c:50:50: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int @@     got restricted __be32 [usertype] @@
   fs/hfsplus/ioctl.c:50:50: sparse:     expected unsigned int
   fs/hfsplus/ioctl.c:50:50: sparse:     got restricted __be32 [usertype]
   fs/hfsplus/ioctl.c:53:50: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int @@     got restricted __be32 [usertype] @@
   fs/hfsplus/ioctl.c:53:50: sparse:     expected unsigned int
   fs/hfsplus/ioctl.c:53:50: sparse:     got restricted __be32 [usertype]
   fs/hfsplus/ioctl.c:99:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected int const *__gu_addr @@     got int [noderef] __user *user_flags @@
   fs/hfsplus/ioctl.c:99:13: sparse:     expected int const *__gu_addr
   fs/hfsplus/ioctl.c:99:13: sparse:     got int [noderef] __user *user_flags
>> fs/hfsplus/ioctl.c:99:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got int const *__gu_addr @@
   fs/hfsplus/ioctl.c:99:13: sparse:     expected void const volatile [noderef] __user *ptr
   fs/hfsplus/ioctl.c:99:13: sparse:     got int const *__gu_addr
--
   kernel/locking/lockdep_proc.c:448:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/locking/lockdep_proc.c:448:17: sparse:    char const [noderef] __rcu *
   kernel/locking/lockdep_proc.c:448:17: sparse:    char const *
   kernel/locking/lockdep_proc.c:449:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/locking/lockdep_proc.c:449:17: sparse:    struct lockdep_subclass_key const [noderef] __rcu *
   kernel/locking/lockdep_proc.c:449:17: sparse:    struct lockdep_subclass_key const *
   kernel/locking/lockdep_proc.c:649:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected char const *__gu_addr @@     got char const [noderef] __user *buf @@
   kernel/locking/lockdep_proc.c:649:21: sparse:     expected char const *__gu_addr
   kernel/locking/lockdep_proc.c:649:21: sparse:     got char const [noderef] __user *buf
>> kernel/locking/lockdep_proc.c:649:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got char const *__gu_addr @@
   kernel/locking/lockdep_proc.c:649:21: sparse:     expected void const volatile [noderef] __user *ptr
   kernel/locking/lockdep_proc.c:649:21: sparse:     got char const *__gu_addr
--
   fs/jfs/jfs_debug.c:36:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected char const *__gu_addr @@     got char const [noderef] __user *buffer @@
   fs/jfs/jfs_debug.c:36:13: sparse:     expected char const *__gu_addr
   fs/jfs/jfs_debug.c:36:13: sparse:     got char const [noderef] __user *buffer
>> fs/jfs/jfs_debug.c:36:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got char const *__gu_addr @@
   fs/jfs/jfs_debug.c:36:13: sparse:     expected void const volatile [noderef] __user *ptr
   fs/jfs/jfs_debug.c:36:13: sparse:     got char const *__gu_addr
--
>> drivers/usb/cdns3/drd.c:42:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:42:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:42:31: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:44:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:44:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:44:25: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:46:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:46:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:46:31: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:48:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:48:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:48:25: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:70:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:70:14: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:70:14: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:80:19: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:80:19: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:80:19: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:113:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:113:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:113:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:122:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:122:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:122:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:138:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:138:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:138:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:142:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:142:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:142:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:142:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:142:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:142:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:159:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:159:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:159:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:164:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:164:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:164:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:164:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:164:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:164:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:181:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:181:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:181:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:185:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:185:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:185:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:185:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:185:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:185:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:209:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:209:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:209:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:213:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:213:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:213:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:213:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:213:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:213:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:230:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:230:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:230:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:296:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:296:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:296:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:315:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:315:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:315:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:338:27: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct cdns3_otg_legacy_regs *otg_v0_regs @@     got void [noderef] __iomem *[assigned] regs @@
   drivers/usb/cdns3/drd.c:338:27: sparse:     expected struct cdns3_otg_legacy_regs *otg_v0_regs
   drivers/usb/cdns3/drd.c:338:27: sparse:     got void [noderef] __iomem *[assigned] regs
   drivers/usb/cdns3/drd.c:339:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:339:14: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:339:14: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:342:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct cdns3_otg_common_regs *otg_regs @@     got void [noderef] __iomem *[assigned] regs @@
   drivers/usb/cdns3/drd.c:342:32: sparse:     expected struct cdns3_otg_common_regs *otg_regs
   drivers/usb/cdns3/drd.c:342:32: sparse:     got void [noderef] __iomem *[assigned] regs
   drivers/usb/cdns3/drd.c:343:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:343:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:343:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:344:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:344:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:344:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:348:35: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct cdns3_otg_regs *otg_v1_regs @@     got void [noderef] __iomem *[assigned] regs @@
   drivers/usb/cdns3/drd.c:348:35: sparse:     expected struct cdns3_otg_regs *otg_v1_regs
   drivers/usb/cdns3/drd.c:348:35: sparse:     got void [noderef] __iomem *[assigned] regs
   drivers/usb/cdns3/drd.c:351:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:351:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:351:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:352:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:352:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:352:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:352:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:352:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:352:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:357:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:357:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:357:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:379:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:379:17: sparse:     expected void const volatile [noderef] __iomem *ptr
--
   drivers/usb/gadget/udc/mv_udc_core.c:66:33: sparse: sparse: incorrect type in initializer (different base types) @@     expected restricted __le16 [usertype] wMaxPacketSize @@     got int @@
   drivers/usb/gadget/udc/mv_udc_core.c:66:33: sparse:     expected restricted __le16 [usertype] wMaxPacketSize
   drivers/usb/gadget/udc/mv_udc_core.c:66:33: sparse:     got int
   drivers/usb/gadget/udc/mv_udc_core.c:366:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr0 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:366:24: sparse:     expected unsigned int [usertype] buff_ptr0
   drivers/usb/gadget/udc/mv_udc_core.c:366:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:368:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr1 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:368:24: sparse:     expected unsigned int [usertype] buff_ptr1
   drivers/usb/gadget/udc/mv_udc_core.c:368:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:369:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr2 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:369:24: sparse:     expected unsigned int [usertype] buff_ptr2
   drivers/usb/gadget/udc/mv_udc_core.c:369:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:370:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr3 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:370:24: sparse:     expected unsigned int [usertype] buff_ptr3
   drivers/usb/gadget/udc/mv_udc_core.c:370:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:371:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr4 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:371:24: sparse:     expected unsigned int [usertype] buff_ptr4
   drivers/usb/gadget/udc/mv_udc_core.c:371:24: sparse:     got restricted __le32 [usertype]
>> drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int * @@
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     got unsigned int *
>> drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int * @@
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     got unsigned int *
   drivers/usb/gadget/udc/mv_udc_core.c:1455:41: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [usertype] @@     got restricted __le16 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:1455:41: sparse:     expected unsigned short [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:1455:41: sparse:     got restricted __le16 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:1515:26: sparse: sparse: cast from restricted __le16
   drivers/usb/gadget/udc/mv_udc_core.c:1545:31: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1546:35: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1567:30: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1578:39: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1579:43: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1615:34: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1624:52: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1610:30: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1610:30: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1633:39: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1634:43: sparse: sparse: restricted __le16 degrades to integer

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a061 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f45 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f45 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5c arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9ea arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 29552 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2020-12-16 11:51 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2020-12-16 11:51 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 36383 bytes --]

Hi Luc,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   d01e7f10dae29eba0f9ada82b65d24e035d5b2f9
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   4 months ago
config: sh-randconfig-s032-20201216 (attached as .config)
compiler: sh4-linux-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.3-184-g1b896707-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # 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=sh 

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


"sparse warnings: (new ones prefixed by >>)"
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
   arch/sh/kernel/setup.c: note: in included file:
>> arch/sh/include/asm/mmu_context.h:151:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context.h:151:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context.h:151:9: sparse:     got unsigned int
--
   arch/sh/kernel/disassemble.c:531:33: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short const [noderef] __user *__gu_addr @@     got unsigned short [usertype] * @@
   arch/sh/kernel/disassemble.c:531:33: sparse:     expected unsigned short const [noderef] __user *__gu_addr
   arch/sh/kernel/disassemble.c:531:33: sparse:     got unsigned short [usertype] *
>> arch/sh/kernel/disassemble.c:531:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned short [usertype] * @@
   arch/sh/kernel/disassemble.c:531:33: sparse:     expected void const volatile [noderef] __user *ptr
   arch/sh/kernel/disassemble.c:531:33: sparse:     got unsigned short [usertype] *
   arch/sh/kernel/disassemble.c:533:33: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const [noderef] __user *__gu_addr @@     got unsigned int [usertype] * @@
   arch/sh/kernel/disassemble.c:533:33: sparse:     expected unsigned int const [noderef] __user *__gu_addr
   arch/sh/kernel/disassemble.c:533:33: sparse:     got unsigned int [usertype] *
>> arch/sh/kernel/disassemble.c:533:33: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int [usertype] * @@
   arch/sh/kernel/disassemble.c:533:33: sparse:     expected void const volatile [noderef] __user *ptr
   arch/sh/kernel/disassemble.c:533:33: sparse:     got unsigned int [usertype] *
   arch/sh/kernel/disassemble.c:560:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned short const [noderef] __user *__gu_addr @@     got unsigned short * @@
   arch/sh/kernel/disassemble.c:560:21: sparse:     expected unsigned short const [noderef] __user *__gu_addr
   arch/sh/kernel/disassemble.c:560:21: sparse:     got unsigned short *
>> arch/sh/kernel/disassemble.c:560:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned short * @@
   arch/sh/kernel/disassemble.c:560:21: sparse:     expected void const volatile [noderef] __user *ptr
   arch/sh/kernel/disassemble.c:560:21: sparse:     got unsigned short *
--
>> arch/sh/kernel/cpu/adc.c:22:15: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:22:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:22:15: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:24:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:24:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:24:9: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:27:23: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:27:23: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:27:23: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:31:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:31:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:31:9: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:33:19: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:33:19: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:33:19: sparse:     got unsigned int
   arch/sh/kernel/cpu/adc.c:34:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/adc.c:34:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/adc.c:34:17: sparse:     got unsigned int
--
   arch/sh/mm/init.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:53:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:53:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
>> arch/sh/kernel/cpu/sh3/clock-sh3.c:28:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:28:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:28:21: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh3.c:40:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:40:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:40:21: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh3.c:52:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:52:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:52:21: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/clock-sh3.c:64:21: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/clock-sh3.c:64:21: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/clock-sh3.c:64:21: sparse:     got unsigned int
--
   fs/hfsplus/ioctl.c:42:50: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int @@     got restricted __be32 [usertype] @@
   fs/hfsplus/ioctl.c:42:50: sparse:     expected unsigned int
   fs/hfsplus/ioctl.c:42:50: sparse:     got restricted __be32 [usertype]
   fs/hfsplus/ioctl.c:50:50: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int @@     got restricted __be32 [usertype] @@
   fs/hfsplus/ioctl.c:50:50: sparse:     expected unsigned int
   fs/hfsplus/ioctl.c:50:50: sparse:     got restricted __be32 [usertype]
   fs/hfsplus/ioctl.c:53:50: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int @@     got restricted __be32 [usertype] @@
   fs/hfsplus/ioctl.c:53:50: sparse:     expected unsigned int
   fs/hfsplus/ioctl.c:53:50: sparse:     got restricted __be32 [usertype]
   fs/hfsplus/ioctl.c:99:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected int const *__gu_addr @@     got int [noderef] __user *user_flags @@
   fs/hfsplus/ioctl.c:99:13: sparse:     expected int const *__gu_addr
   fs/hfsplus/ioctl.c:99:13: sparse:     got int [noderef] __user *user_flags
>> fs/hfsplus/ioctl.c:99:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got int const *__gu_addr @@
   fs/hfsplus/ioctl.c:99:13: sparse:     expected void const volatile [noderef] __user *ptr
   fs/hfsplus/ioctl.c:99:13: sparse:     got int const *__gu_addr
--
   kernel/locking/lockdep_proc.c:448:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/locking/lockdep_proc.c:448:17: sparse:    char const [noderef] __rcu *
   kernel/locking/lockdep_proc.c:448:17: sparse:    char const *
   kernel/locking/lockdep_proc.c:449:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
   kernel/locking/lockdep_proc.c:449:17: sparse:    struct lockdep_subclass_key const [noderef] __rcu *
   kernel/locking/lockdep_proc.c:449:17: sparse:    struct lockdep_subclass_key const *
   kernel/locking/lockdep_proc.c:649:21: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected char const *__gu_addr @@     got char const [noderef] __user *buf @@
   kernel/locking/lockdep_proc.c:649:21: sparse:     expected char const *__gu_addr
   kernel/locking/lockdep_proc.c:649:21: sparse:     got char const [noderef] __user *buf
>> kernel/locking/lockdep_proc.c:649:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got char const *__gu_addr @@
   kernel/locking/lockdep_proc.c:649:21: sparse:     expected void const volatile [noderef] __user *ptr
   kernel/locking/lockdep_proc.c:649:21: sparse:     got char const *__gu_addr
--
   fs/jfs/jfs_debug.c:36:13: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected char const *__gu_addr @@     got char const [noderef] __user *buffer @@
   fs/jfs/jfs_debug.c:36:13: sparse:     expected char const *__gu_addr
   fs/jfs/jfs_debug.c:36:13: sparse:     got char const [noderef] __user *buffer
>> fs/jfs/jfs_debug.c:36:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got char const *__gu_addr @@
   fs/jfs/jfs_debug.c:36:13: sparse:     expected void const volatile [noderef] __user *ptr
   fs/jfs/jfs_debug.c:36:13: sparse:     got char const *__gu_addr
--
>> drivers/usb/cdns3/drd.c:42:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:42:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:42:31: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:44:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:44:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:44:25: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:46:31: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:46:31: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:46:31: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:48:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:48:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:48:25: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:70:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:70:14: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:70:14: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:80:19: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:80:19: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:80:19: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:113:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:113:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:113:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:122:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:122:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:122:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:138:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:138:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:138:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:142:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:142:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:142:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:142:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:142:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:142:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:159:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:159:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:159:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:164:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:164:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:164:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:164:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:164:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:164:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:181:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:181:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:181:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:185:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:185:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:185:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:185:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:185:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:185:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:209:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:209:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:209:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:213:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:213:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:213:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:213:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:213:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:213:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:230:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:230:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:230:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:296:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:296:15: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:296:15: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:315:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:315:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:315:9: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:338:27: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct cdns3_otg_legacy_regs *otg_v0_regs @@     got void [noderef] __iomem *[assigned] regs @@
   drivers/usb/cdns3/drd.c:338:27: sparse:     expected struct cdns3_otg_legacy_regs *otg_v0_regs
   drivers/usb/cdns3/drd.c:338:27: sparse:     got void [noderef] __iomem *[assigned] regs
   drivers/usb/cdns3/drd.c:339:14: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:339:14: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:339:14: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:342:32: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct cdns3_otg_common_regs *otg_regs @@     got void [noderef] __iomem *[assigned] regs @@
   drivers/usb/cdns3/drd.c:342:32: sparse:     expected struct cdns3_otg_common_regs *otg_regs
   drivers/usb/cdns3/drd.c:342:32: sparse:     got void [noderef] __iomem *[assigned] regs
   drivers/usb/cdns3/drd.c:343:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:343:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:343:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:344:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:344:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:344:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:348:35: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct cdns3_otg_regs *otg_v1_regs @@     got void [noderef] __iomem *[assigned] regs @@
   drivers/usb/cdns3/drd.c:348:35: sparse:     expected struct cdns3_otg_regs *otg_v1_regs
   drivers/usb/cdns3/drd.c:348:35: sparse:     got void [noderef] __iomem *[assigned] regs
   drivers/usb/cdns3/drd.c:351:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:351:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:351:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:352:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:352:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:352:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:352:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:352:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:352:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:357:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:357:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/cdns3/drd.c:357:17: sparse:     got restricted __le32 *
   drivers/usb/cdns3/drd.c:379:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got restricted __le32 * @@
   drivers/usb/cdns3/drd.c:379:17: sparse:     expected void const volatile [noderef] __iomem *ptr
--
   drivers/usb/gadget/udc/mv_udc_core.c:66:33: sparse: sparse: incorrect type in initializer (different base types) @@     expected restricted __le16 [usertype] wMaxPacketSize @@     got int @@
   drivers/usb/gadget/udc/mv_udc_core.c:66:33: sparse:     expected restricted __le16 [usertype] wMaxPacketSize
   drivers/usb/gadget/udc/mv_udc_core.c:66:33: sparse:     got int
   drivers/usb/gadget/udc/mv_udc_core.c:366:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr0 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:366:24: sparse:     expected unsigned int [usertype] buff_ptr0
   drivers/usb/gadget/udc/mv_udc_core.c:366:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:368:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr1 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:368:24: sparse:     expected unsigned int [usertype] buff_ptr1
   drivers/usb/gadget/udc/mv_udc_core.c:368:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:369:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr2 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:369:24: sparse:     expected unsigned int [usertype] buff_ptr2
   drivers/usb/gadget/udc/mv_udc_core.c:369:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:370:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr3 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:370:24: sparse:     expected unsigned int [usertype] buff_ptr3
   drivers/usb/gadget/udc/mv_udc_core.c:370:24: sparse:     got restricted __le32 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:371:24: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] buff_ptr4 @@     got restricted __le32 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:371:24: sparse:     expected unsigned int [usertype] buff_ptr4
   drivers/usb/gadget/udc/mv_udc_core.c:371:24: sparse:     got restricted __le32 [usertype]
>> drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int * @@
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     got unsigned int *
>> drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int * @@
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   drivers/usb/gadget/udc/mv_udc_core.c:832:17: sparse:     got unsigned int *
   drivers/usb/gadget/udc/mv_udc_core.c:1455:41: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned short [usertype] @@     got restricted __le16 [usertype] @@
   drivers/usb/gadget/udc/mv_udc_core.c:1455:41: sparse:     expected unsigned short [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:1455:41: sparse:     got restricted __le16 [usertype]
   drivers/usb/gadget/udc/mv_udc_core.c:1515:26: sparse: sparse: cast from restricted __le16
   drivers/usb/gadget/udc/mv_udc_core.c:1545:31: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1546:35: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1567:30: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1578:39: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1579:43: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1615:34: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1624:52: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1610:30: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1610:30: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1633:39: sparse: sparse: restricted __le16 degrades to integer
   drivers/usb/gadget/udc/mv_udc_core.c:1634:43: sparse: sparse: restricted __le16 degrades to integer

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a061 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f45 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f45 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348edf arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5c arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9ea arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f415 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 29552 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2020-11-01 15:38 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2020-11-01 15:38 UTC (permalink / raw)
  To: Luc Van Oostenryck; +Cc: kbuild-all, linux-kernel, Miguel Ojeda

[-- Attachment #1: Type: text/plain, Size: 12068 bytes --]

Hi Luc,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   c2dc4c073fb71b50904493657a7622b481b346e3
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   9 weeks ago
config: sh-randconfig-s032-20201030 (attached as .config)
compiler: sh4-linux-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.3-68-g49c98aa3-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # 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=sh 

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


"sparse warnings: (new ones prefixed by >>)"
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
   arch/sh/mm/fault.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     got unsigned int
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
>> arch/sh/kernel/cpu/sh3/serial-sh770x.c:15:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/kernel/cpu/sh3/serial-sh770x.c:15:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:15:16: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:17:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:17:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:17:9: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:21:24: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:21:24: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:21:24: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:24:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:24:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:24:17: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:26:24: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:26:24: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:26:24: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:28:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:28:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:28:17: sparse:     got unsigned int
--
   drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
>> drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int const *__gu_addr

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a06 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5 arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9e arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 22020 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

* arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types)
@ 2020-11-01 15:38 ` kernel test robot
  0 siblings, 0 replies; 8+ messages in thread
From: kernel test robot @ 2020-11-01 15:38 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 12202 bytes --]

Hi Luc,

First bad commit (maybe != root cause):

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   c2dc4c073fb71b50904493657a7622b481b346e3
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date:   9 weeks ago
config: sh-randconfig-s032-20201030 (attached as .config)
compiler: sh4-linux-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.3-68-g49c98aa3-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout e5fc436f06eef54ef512ea55a9db8eb9f2e76959
        # 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=sh 

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


"sparse warnings: (new ones prefixed by >>)"
>> arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/kernel/process_32.c:42:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/process_32.c:42:9: sparse:     got unsigned int
--
   arch/sh/mm/fault.c: note: in included file (through arch/sh/include/asm/mmu_context.h):
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     got unsigned int
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/include/asm/mmu_context_32.h:58:25: sparse:     got unsigned int
--
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
>> arch/sh/mm/tlbflush_32.c:134:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/mm/tlbflush_32.c:134:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlbflush_32.c:134:9: sparse:     got unsigned int
--
>> arch/sh/mm/tlb-sh3.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/mm/tlb-sh3.c:41:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:41:9: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:48:9: sparse:     got unsigned int
>> arch/sh/mm/tlb-sh3.c:75:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned long @@
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:75:17: sparse:     got unsigned long
   arch/sh/mm/tlb-sh3.c:90:18: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:90:18: sparse:     got unsigned int
   arch/sh/mm/tlb-sh3.c:92:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/mm/tlb-sh3.c:92:9: sparse:     got unsigned int
--
>> arch/sh/kernel/cpu/sh3/serial-sh770x.c:15:16: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
>> arch/sh/kernel/cpu/sh3/serial-sh770x.c:15:16: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:15:16: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:17:9: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:17:9: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:17:9: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:21:24: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:21:24: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:21:24: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:24:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:24:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:24:17: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:26:24: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:26:24: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:26:24: sparse:     got unsigned int
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:28:17: sparse: sparse: incorrect type in argument 1 (different base types) @@     expected void const volatile [noderef] __iomem *ptr @@     got unsigned int @@
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:28:17: sparse:     expected void const volatile [noderef] __iomem *ptr
   arch/sh/kernel/cpu/sh3/serial-sh770x.c:28:17: sparse:     got unsigned int
--
   drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const *__gu_addr @@     got unsigned int [noderef] [usertype] __user * @@
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected unsigned int const *__gu_addr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int [noderef] [usertype] __user *
>> drivers/gpu/drm/drm_crtc.c:708:29: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned int const *__gu_addr @@
>> drivers/gpu/drm/drm_crtc.c:708:29: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/gpu/drm/drm_crtc.c:708:29: sparse:     got unsigned int const *__gu_addr

vim +42 arch/sh/kernel/process_32.c

^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  30  
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  31  void show_regs(struct pt_regs * regs)
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  32  {
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  33  	pr_info("\n");
a43cb95d547a06 arch/sh/kernel/process_32.c Tejun Heo          2013-04-30  34  	show_regs_print_info(KERN_DEFAULT);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  35  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  36  	pr_info("PC is at %pS\n", (void *)instruction_pointer(regs));
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  37  	pr_info("PR is at %pS\n", (void *)regs->pr);
7d96169cb769f4 arch/sh/kernel/process_32.c Paul Mundt         2008-08-08  38  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  39  	pr_info("PC  : %08lx SP  : %08lx SR  : %08lx ", regs->pc,
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  40  		regs->regs[15], regs->sr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  41  #ifdef CONFIG_MMU
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17 @42  	pr_cont("TEA : %08x\n", __raw_readl(MMU_TEA));
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  43  #else
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  44  	pr_cont("\n");
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  45  #endif
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  46  
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  47  	pr_info("R0  : %08lx R1  : %08lx R2  : %08lx R3  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  48  		regs->regs[0], regs->regs[1], regs->regs[2], regs->regs[3]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  49  	pr_info("R4  : %08lx R5  : %08lx R6  : %08lx R7  : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  50  		regs->regs[4], regs->regs[5], regs->regs[6], regs->regs[7]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  51  	pr_info("R8  : %08lx R9  : %08lx R10 : %08lx R11 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  52  		regs->regs[8], regs->regs[9], regs->regs[10], regs->regs[11]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  53  	pr_info("R12 : %08lx R13 : %08lx R14 : %08lx\n",
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  54  		regs->regs[12], regs->regs[13], regs->regs[14]);
21afcacb0348ed arch/sh/kernel/process_32.c Geert Uytterhoeven 2020-06-17  55  	pr_info("MACH: %08lx MACL: %08lx GBR : %08lx PR  : %08lx\n",
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  56  		regs->mach, regs->macl, regs->gbr, regs->pr);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  57  
539e786cc37ee5 arch/sh/kernel/process_32.c Dmitry Safonov     2020-06-08  58  	show_trace(NULL, (unsigned long *)regs->regs[15], regs, KERN_DEFAULT);
9cfc9a9b6fff9e arch/sh/kernel/process_32.c Paul Mundt         2008-11-26  59  	show_code(regs);
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  60  }
^1da177e4c3f41 arch/sh/kernel/process.c    Linus Torvalds     2005-04-16  61  

:::::: The code at line 42 was first introduced by commit
:::::: 21afcacb0348edf8f5d4e6115b5eb0b58f9a049b sh: process: Fix broken lines in register dumps

:::::: TO: Geert Uytterhoeven <geert+renesas@glider.be>
:::::: CC: Rich Felker <dalias@libc.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 22020 bytes --]

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-08-05 19:23 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-08 14:18 arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) kernel test robot
2021-04-08 14:18 ` kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2021-08-05 19:22 kernel test robot
2021-08-05 19:22 ` kernel test robot
2020-12-16 11:51 kernel test robot
2020-12-16 11:51 ` kernel test robot
2020-11-01 15:38 kernel test robot
2020-11-01 15:38 ` kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.