arch/cris/arch-v32/mm/intmem.c:148:17: error: initialization from incompatible pointer type

From: kbuild test robot
Date: Sat Sep 17 2016 - 12:05:04 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4d2899d73c4734cd04edb9409a72d0ef637cfb06
commit: ea8daa7b97842aab8507b5b5b1e3226cf2d514a6 kbuild: Add option to turn incompatible pointer check into error
date: 6 months ago
config: cris-artpec_3_defconfig (attached as .config)
compiler: cris-linux-gcc (GCC) 6.2.0
reproduce:
wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout ea8daa7b97842aab8507b5b5b1e3226cf2d514a6
# save the attached .config to linux build tree
make.cross ARCH=cris

All errors (new ones prefixed by >>):

arch/cris/arch-v32/mm/intmem.c: In function 'crisv32_intmem_free':
arch/cris/arch-v32/mm/intmem.c:116:14: warning: comparison of distinct pointer types lacks a cast
if ((prev != &intmem_allocations) &&
^~
arch/cris/arch-v32/mm/intmem.c:123:14: warning: comparison of distinct pointer types lacks a cast
if ((next != &intmem_allocations) &&
^~
In file included from include/linux/printk.h:5:0,
from include/linux/kernel.h:13,
from include/linux/list.h:8,
from arch/cris/arch-v32/mm/intmem.c:7:
arch/cris/arch-v32/mm/intmem.c: At top level:
>> arch/cris/arch-v32/mm/intmem.c:148:17: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
device_initcall(crisv32_intmem_init);
^
include/linux/init.h:184:58: note: in definition of macro '__define_initcall'
__attribute__((__section__(".initcall" #id ".init"))) = fn; \
^~
arch/cris/arch-v32/mm/intmem.c:148:1: note: in expansion of macro 'device_initcall'
device_initcall(crisv32_intmem_init);
^~~~~~~~~~~~~~~
cc1: some warnings being treated as errors

vim +148 arch/cris/arch-v32/mm/intmem.c

51533b61 Mikael Starvik 2005-07-27 132 }
51533b61 Mikael Starvik 2005-07-27 133 preempt_enable();
51533b61 Mikael Starvik 2005-07-27 134 }
51533b61 Mikael Starvik 2005-07-27 135
51533b61 Mikael Starvik 2005-07-27 136 void* crisv32_intmem_phys_to_virt(unsigned long addr)
51533b61 Mikael Starvik 2005-07-27 137 {
108ecfbc Jesper Nilsson 2008-01-25 138 return (void *)(addr - (MEM_INTMEM_START + RESERVED_SIZE) +
51533b61 Mikael Starvik 2005-07-27 139 (unsigned long)intmem_virtual);
51533b61 Mikael Starvik 2005-07-27 140 }
51533b61 Mikael Starvik 2005-07-27 141
51533b61 Mikael Starvik 2005-07-27 142 unsigned long crisv32_intmem_virt_to_phys(void* addr)
51533b61 Mikael Starvik 2005-07-27 143 {
51533b61 Mikael Starvik 2005-07-27 144 return (unsigned long)((unsigned long )addr -
108ecfbc Jesper Nilsson 2008-01-25 145 (unsigned long)intmem_virtual + MEM_INTMEM_START +
108ecfbc Jesper Nilsson 2008-01-25 146 RESERVED_SIZE);
51533b61 Mikael Starvik 2005-07-27 147 }
73de14e8 Paul Gortmaker 2015-05-01 @148 device_initcall(crisv32_intmem_init);
51533b61 Mikael Starvik 2005-07-27 149

:::::: The code at line 148 was first introduced by commit
:::::: 73de14e8cdc733bbc8eda006f813d5aa51511139 cris: don't use module_init for non-modular core intmem.c code

:::::: TO: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>
:::::: CC: Paul Gortmaker <paul.gortmaker@xxxxxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip