Hi, On Mon, Apr 20, 2015 at 12:40:28PM -0700, Guenter Roeck wrote: > the upstream kernel fails to build mips:nlm_xlp_defconfig, > mips:nlm_xlp_defconfig, mips:cavium_octeon_defconfig, and possibly > other targets, with errors such as > > arch/mips/kernel/smp.c:211:2: error: > passing argument 2 of 'cpumask_set_cpu' discards 'volatile' qualifier > from pointer target type > arch/mips/kernel/process.c:52:2: error: > passing argument 2 of 'cpumask_test_cpu' discards 'volatile' qualifier > from pointer target type > arch/mips/cavium-octeon/smp.c:242:2: error: > passing argument 2 of 'cpumask_clear_cpu' discards 'volatile' qualifier > from pointer target type > > The problem was introduced with commit 8dd928915a73 (" mips: fix up > obsolete cpu function usage"). I would send a patch to fix it, but I > am not sure if removing 'volatile' from the variable declaration(s) > would be a good idea. I think removing volatile from cpu_callin_map declaration should be OK, since test_cpu (only reader) uses test_bit which takes care of it: static inline int test_bit(int nr, const volatile unsigned long *addr) A.