Messages in this thread | | | Date | Sun, 1 Nov 2020 23:38:44 +0800 | From | kernel test robot <> | Subject | arch/sh/kernel/process_32.c:42:9: sparse: sparse: incorrect type in argument 1 (different base types) |
| |
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 [unhandled content-type:application/gzip] | |