arch/sh/kernel/cpu/irq/ipr.c:35:9: sparse: sparse: incorrect type in argument 1 (different base types)

From: kernel test robot
Date: Sun Dec 27 2020 - 22:18:34 EST


Hi Luc,

First bad commit (maybe != root cause):

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 5c8fe583cce542aa0b84adc939ce85293de36e5e
commit: e5fc436f06eef54ef512ea55a9db8eb9f2e76959 sparse: use static inline for __chk_{user,io}_ptr()
date: 4 months ago
config: sh-randconfig-s032-20201223 (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@xxxxxxxxx>


"sparse warnings: (new ones prefixed by >>)"
>> arch/sh/kernel/cpu/irq/ipr.c:35:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long addr @@
arch/sh/kernel/cpu/irq/ipr.c:35:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/irq/ipr.c:35:9: sparse: got unsigned long addr
>> arch/sh/kernel/cpu/irq/ipr.c:35:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long addr @@
arch/sh/kernel/cpu/irq/ipr.c:35:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/irq/ipr.c:35:9: sparse: got unsigned long addr
arch/sh/kernel/cpu/irq/ipr.c:36:15: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long addr @@
arch/sh/kernel/cpu/irq/ipr.c:36:15: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/irq/ipr.c:36:15: sparse: got unsigned long addr
arch/sh/kernel/cpu/irq/ipr.c:44:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long addr @@
arch/sh/kernel/cpu/irq/ipr.c:44:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/irq/ipr.c:44:9: sparse: got unsigned long addr
arch/sh/kernel/cpu/irq/ipr.c:44:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long addr @@
arch/sh/kernel/cpu/irq/ipr.c:44:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/irq/ipr.c:44:9: sparse: got unsigned long addr
--
arch/sh/kernel/cpu/sh3/probe.c:30:18: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr0 @@
arch/sh/kernel/cpu/sh3/probe.c:30:18: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:30:18: sparse: got unsigned long [assigned] addr0
arch/sh/kernel/cpu/sh3/probe.c:31:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr0 @@
arch/sh/kernel/cpu/sh3/probe.c:31:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:31:9: sparse: got unsigned long [assigned] addr0
arch/sh/kernel/cpu/sh3/probe.c:32:18: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr1 @@
arch/sh/kernel/cpu/sh3/probe.c:32:18: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:32:18: sparse: got unsigned long [assigned] addr1
arch/sh/kernel/cpu/sh3/probe.c:33:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr1 @@
arch/sh/kernel/cpu/sh3/probe.c:33:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:33:9: sparse: got unsigned long [assigned] addr1
arch/sh/kernel/cpu/sh3/probe.c:36:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr0 @@
arch/sh/kernel/cpu/sh3/probe.c:36:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:36:17: sparse: got unsigned long [assigned] addr0
arch/sh/kernel/cpu/sh3/probe.c:38:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr0 @@
arch/sh/kernel/cpu/sh3/probe.c:38:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:38:9: sparse: got unsigned long [assigned] addr0
arch/sh/kernel/cpu/sh3/probe.c:39:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr1 @@
arch/sh/kernel/cpu/sh3/probe.c:39:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:39:17: sparse: got unsigned long [assigned] addr1
arch/sh/kernel/cpu/sh3/probe.c:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr1 @@
arch/sh/kernel/cpu/sh3/probe.c:41:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:41:9: sparse: got unsigned long [assigned] addr1
arch/sh/kernel/cpu/sh3/probe.c:42:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr0 @@
arch/sh/kernel/cpu/sh3/probe.c:42:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:42:17: sparse: got unsigned long [assigned] addr0
arch/sh/kernel/cpu/sh3/probe.c:45:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr0 @@
arch/sh/kernel/cpu/sh3/probe.c:45:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:45:9: sparse: got unsigned long [assigned] addr0
arch/sh/kernel/cpu/sh3/probe.c:46:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned long [assigned] addr1 @@
arch/sh/kernel/cpu/sh3/probe.c:46:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:46:9: sparse: got unsigned long [assigned] addr1
>> arch/sh/kernel/cpu/sh3/probe.c:96: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/probe.c:96:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/kernel/cpu/sh3/probe.c:96:17: sparse: got unsigned int
--
>> arch/sh/boards/mach-se/770x/irq.c:100:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-se/770x/irq.c:100:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-se/770x/irq.c:100:9: sparse: got unsigned int
arch/sh/boards/mach-se/770x/irq.c:101:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-se/770x/irq.c:101:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-se/770x/irq.c:101:9: sparse: got unsigned int
arch/sh/boards/mach-se/770x/irq.c:102:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-se/770x/irq.c:102:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-se/770x/irq.c:102:9: sparse: got unsigned int
arch/sh/boards/mach-se/770x/irq.c:103:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-se/770x/irq.c:103:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-se/770x/irq.c:103:9: sparse: got unsigned int
arch/sh/boards/mach-se/770x/irq.c:104:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-se/770x/irq.c:104:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-se/770x/irq.c:104:9: sparse: got unsigned int
arch/sh/boards/mach-se/770x/irq.c:105:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-se/770x/irq.c:105:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-se/770x/irq.c:105:9: sparse: got unsigned int
arch/sh/boards/mach-se/770x/irq.c:106:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/boards/mach-se/770x/irq.c:106:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/boards/mach-se/770x/irq.c:106:9: sparse: got unsigned int
--
arch/sh/boards/mach-se/770x/setup.c: note: in included file (through include/linux/scatterlist.h, include/linux/dma-mapping.h, include/linux/skbuff.h, ...):
arch/sh/include/asm/io.h:184:1: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char volatile [usertype] *__addr @@ got void [noderef] __iomem * @@
arch/sh/include/asm/io.h:184:1: sparse: expected unsigned char volatile [usertype] *__addr
arch/sh/include/asm/io.h:184:1: sparse: got void [noderef] __iomem *
arch/sh/include/asm/io.h:184:1: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char volatile [usertype] *__addr @@ got void [noderef] __iomem * @@
arch/sh/include/asm/io.h:184:1: sparse: expected unsigned char volatile [usertype] *__addr
arch/sh/include/asm/io.h:184:1: sparse: got void [noderef] __iomem *
arch/sh/include/asm/io.h:184:1: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char volatile [usertype] *__addr @@ got void [noderef] __iomem * @@
arch/sh/include/asm/io.h:184:1: sparse: expected unsigned char volatile [usertype] *__addr
arch/sh/include/asm/io.h:184:1: sparse: got void [noderef] __iomem *
arch/sh/include/asm/io.h:184:1: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char volatile [usertype] *__addr @@ got void [noderef] __iomem * @@
arch/sh/include/asm/io.h:184:1: sparse: expected unsigned char volatile [usertype] *__addr
arch/sh/include/asm/io.h:184:1: sparse: got void [noderef] __iomem *
arch/sh/include/asm/io.h:184:1: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char volatile [usertype] *__addr @@ got void [noderef] __iomem * @@
arch/sh/include/asm/io.h:184:1: sparse: expected unsigned char volatile [usertype] *__addr
arch/sh/include/asm/io.h:184:1: sparse: got void [noderef] __iomem *
arch/sh/boards/mach-se/770x/setup.c: note: in included file:
>> arch/sh/include/mach-se/mach/mrshpc.h:9:14: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:9:14: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:9:14: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:12:14: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:12:14: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:12:14: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:13:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:13:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:13:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:15:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:15:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:15:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:23:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:23:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:23:9: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:24:13: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:24:13: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:24:13: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:26:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:26:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:26:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:29:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:29:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:29:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:32:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:32:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:32:9: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:33:14: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:33:14: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:33:14: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:35:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:35:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:35:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:38:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:38:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:38:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:41:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:41:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:41:9: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:42:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:42:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:42:9: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:43:14: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:43:14: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:43:14: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:44:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:44:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:44:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:46:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:46:17: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:46:17: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:48:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:48:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:48:9: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:49:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:49:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:49:9: sparse: got unsigned int
arch/sh/include/mach-se/mach/mrshpc.h:50:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected void const volatile [noderef] __iomem *ptr @@ got unsigned int @@
arch/sh/include/mach-se/mach/mrshpc.h:50:9: sparse: expected void const volatile [noderef] __iomem *ptr
arch/sh/include/mach-se/mach/mrshpc.h:50:9: sparse: got unsigned int
--
drivers/fpga/dfl-fme-main.c:143:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user * @@
drivers/fpga/dfl-fme-main.c:143:13: sparse: expected int const *__gu_addr
drivers/fpga/dfl-fme-main.c:143:13: sparse: got int [noderef] __user *
>> drivers/fpga/dfl-fme-main.c:143:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
drivers/fpga/dfl-fme-main.c:143:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/fpga/dfl-fme-main.c:143:13: sparse: got int const *__gu_addr
drivers/fpga/dfl-fme-main.c:155:13: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected int const *__gu_addr @@ got int [noderef] __user * @@
drivers/fpga/dfl-fme-main.c:155:13: sparse: expected int const *__gu_addr
drivers/fpga/dfl-fme-main.c:155:13: sparse: got int [noderef] __user *
drivers/fpga/dfl-fme-main.c:155:13: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __user *ptr @@ got int const *__gu_addr @@
drivers/fpga/dfl-fme-main.c:155:13: sparse: expected void const volatile [noderef] __user *ptr
drivers/fpga/dfl-fme-main.c:155:13: sparse: got int const *__gu_addr

vim +35 arch/sh/kernel/cpu/irq/ipr.c

68abdbbb03476a6 arch/sh/kernel/cpu/irq/ipr.c Magnus Damm 2007-06-15 29
8df3a615da1a9fe arch/sh/kernel/cpu/irq/ipr.c Paul Mundt 2010-10-27 30 static void disable_ipr_irq(struct irq_data *data)
^1da177e4c3f415 arch/sh/kernel/cpu/irq_ipr.c Linus Torvalds 2005-04-16 31 {
8df3a615da1a9fe arch/sh/kernel/cpu/irq/ipr.c Paul Mundt 2010-10-27 32 struct ipr_data *p = irq_data_get_irq_chip_data(data);
8df3a615da1a9fe arch/sh/kernel/cpu/irq/ipr.c Paul Mundt 2010-10-27 33 unsigned long addr = get_ipr_desc(data)->ipr_offsets[p->ipr_idx];
^1da177e4c3f415 arch/sh/kernel/cpu/irq_ipr.c Linus Torvalds 2005-04-16 34 /* Set the priority in IPR to 0 */
62429e036448336 arch/sh/kernel/cpu/irq/ipr.c Paul Mundt 2008-10-01 @35 __raw_writew(__raw_readw(addr) & (0xffff ^ (0xf << p->shift)), addr);
6000fc4d6f3e55a arch/sh/kernel/cpu/irq/ipr.c Stuart Menefy 2009-08-24 36 (void)__raw_readw(addr); /* Read back to flush write posting */
^1da177e4c3f415 arch/sh/kernel/cpu/irq_ipr.c Linus Torvalds 2005-04-16 37 }
^1da177e4c3f415 arch/sh/kernel/cpu/irq_ipr.c Linus Torvalds 2005-04-16 38

:::::: The code at line 35 was first introduced by commit
:::::: 62429e03644833693e6f94afe537f252e2d3b475 sh: Use __raw_xxx() I/O accessors for INTC and IPR.

:::::: TO: Paul Mundt <lethal@xxxxxxxxxxxx>
:::::: CC: Paul Mundt <lethal@xxxxxxxxxxxx>

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

Attachment: .config.gz
Description: application/gzip