* arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000)
@ 2024-12-09 5:08 kernel test robot
2024-12-10 17:06 ` Gregory CLEMENT
0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2024-12-09 5:08 UTC (permalink / raw)
To: Gregory CLEMENT; +Cc: oe-kbuild-all, linux-kernel, Thomas Bogendoerfer
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fac04efc5c793dccbd07e2d59af9f90b7fc0dca4
commit: 6f14293257309a02a6d451e80e4ef1d78560479e MIPS: Allow using more than 32-bit addresses for reset vectors when possible
date: 6 weeks ago
config: mips-randconfig-r112-20241209 (https://download.01.org/0day-ci/archive/20241209/202412091227.KUZgstBB-lkp@intel.com/config)
compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 592c0fe55f6d9a811028b5f3507be91458ab2713)
reproduce: (https://download.01.org/0day-ci/archive/20241209/202412091227.KUZgstBB-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202412091227.KUZgstBB-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
arch/mips/kernel/smp-cps.c:83:32: sparse: sparse: cast removes address space '__iomem' of expression
arch/mips/kernel/smp-cps.c: note: in included file (through include/linux/mmzone.h, include/linux/gfp.h, include/linux/xarray.h, ...):
include/linux/page-flags.h:237:46: sparse: sparse: self-comparison always evaluates to false
include/linux/page-flags.h:237:46: sparse: sparse: self-comparison always evaluates to false
arch/mips/kernel/smp-cps.c: note: in included file (through arch/mips/include/asm/mips-cps.h):
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:308:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:308:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:308:1: sparse: got void [noderef] __iomem *
arch/mips/kernel/smp-cps.c: note: in included file (through arch/mips/include/asm/mips-cps.h):
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cpc.h:149:1: sparse: expected void *
arch/mips/include/asm/mips-cpc.h:149:1: sparse: got void [noderef] __iomem *
arch/mips/kernel/smp-cps.c: note: in included file (through arch/mips/include/asm/mips-cps.h):
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
>> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000)
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
>> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000)
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:143:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:143:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void const volatile [noderef] __iomem *mem
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:164:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
arch/mips/include/asm/mips-cm.h:164:1: sparse: expected void *
arch/mips/include/asm/mips-cm.h:164:1: sparse: got void [noderef] __iomem *
arch/mips/include/asm/mips-cm.h:143:1: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *mem @@ got void * @@
vim +329 arch/mips/include/asm/mips-cm.h
326
327 /* GCR_Cx_RESET_BASE - Configure where powered up cores will fetch from */
328 GCR_CX_ACCESSOR_RW(32, 0x020, reset_base)
> 329 GCR_CX_ACCESSOR_RW(64, 0x020, reset64_base)
330 #define CM_GCR_Cx_RESET_BASE_BEVEXCBASE GENMASK(31, 12)
331 #define CM_GCR_Cx_RESET64_BASE_BEVEXCBASE GENMASK_ULL(47, 12)
332 #define CM_GCR_Cx_RESET_BASE_MODE BIT(1)
333
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000)
2024-12-09 5:08 arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000) kernel test robot
@ 2024-12-10 17:06 ` Gregory CLEMENT
0 siblings, 0 replies; 2+ messages in thread
From: Gregory CLEMENT @ 2024-12-10 17:06 UTC (permalink / raw)
To: kernel test robot
Cc: oe-kbuild-all, linux-kernel, Thomas Bogendoerfer,
Théo Lebrun
Hello,
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: fac04efc5c793dccbd07e2d59af9f90b7fc0dca4
> commit: 6f14293257309a02a6d451e80e4ef1d78560479e MIPS: Allow using more than 32-bit addresses for reset vectors when possible
> date: 6 weeks ago
> config: mips-randconfig-r112-20241209 (https://download.01.org/0day-ci/archive/20241209/202412091227.KUZgstBB-lkp@intel.com/config)
> compiler: clang version 20.0.0git (https://github.com/llvm/llvm-project 592c0fe55f6d9a811028b5f3507be91458ab2713)
> reproduce: (https://download.01.org/0day-ci/archive/20241209/202412091227.KUZgstBB-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202412091227.KUZgstBB-lkp@intel.com/
[...]
> arch/mips/kernel/smp-cps.c: note: in included file (through arch/mips/include/asm/mips-cps.h):
> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
> arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
> arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
> arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
> arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
> arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
> arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *mem @@ got void * @@
> arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void volatile [noderef] __iomem *mem
> arch/mips/include/asm/mips-cm.h:329:1: sparse: got void *
>>> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000)
> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
> arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
> arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: incorrect type in return expression (different address spaces) @@ expected void * @@ got void [noderef] __iomem * @@
> arch/mips/include/asm/mips-cm.h:329:1: sparse: expected void *
> arch/mips/include/asm/mips-cm.h:329:1: sparse: got void [noderef] __iomem *
>>> arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000)
So I looked for from where this error comes and found that it was caused
by:
write_gcr_co_reset64_base(CM_GCR_Cx_RESET64_BASE_BEVEXCBASE);
in function check_64bit_reset() (smp-cps.c)
The constant value being CM_GCR_Cx_RESET64_BASE_BEVEXCBASE.
It occurs due to:
__raw_writel(val, addr_##unit##_##name());
in write_##unit##_##name(uint##sz##_t val) (mips-cps.h)
However, check_64bit_reset() is only called when mips_cm_is64 is true,
whereas in write_##unit##_##name(uint##sz##_t val) __raw_writel is not
called when mips_cm_is64 is true. This warning is therefore a false
positive and I do not see any reasonable way to silence it, so I think
we should simply ignore it unless someone has a better proposal.
Gregory
[...]
>
> vim +329 arch/mips/include/asm/mips-cm.h
>
> 326
> 327 /* GCR_Cx_RESET_BASE - Configure where powered up cores will fetch from */
> 328 GCR_CX_ACCESSOR_RW(32, 0x020, reset_base)
> > 329 GCR_CX_ACCESSOR_RW(64, 0x020, reset64_base)
> 330 #define CM_GCR_Cx_RESET_BASE_BEVEXCBASE GENMASK(31, 12)
> 331 #define CM_GCR_Cx_RESET64_BASE_BEVEXCBASE GENMASK_ULL(47, 12)
> 332 #define CM_GCR_Cx_RESET_BASE_MODE BIT(1)
> 333
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
--
Grégory CLEMENT, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-12-10 17:06 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-12-09 5:08 arch/mips/include/asm/mips-cm.h:329:1: sparse: sparse: cast truncates bits from constant value (fffffffff000 becomes fffff000) kernel test robot
2024-12-10 17:06 ` Gregory CLEMENT
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.