Hi, On Tue, Aug 04, 2020 at 01:39:14AM +0800, kernel test robot wrote: > Hi Mike, > > FYI, the error/warning still remains. > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > head: bcf876870b95592b52519ed4aafcf9d95999bc9c > commit: 397dc00e249ec64e106374565575dd0eb7e25998 mips: sgi-ip27: switch from DISCONTIGMEM to SPARSEMEM > date: 10 months ago > config: mips-randconfig-r032-20200803 (attached as .config) > compiler: mips64-linux-gcc (GCC) 9.3.0 > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > git checkout 397dc00e249ec64e106374565575dd0eb7e25998 > # save the attached .config to linux build tree > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=mips > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot <lkp@xxxxxxxxx> > > All errors (new ones prefixed by >>): > > In file included from arch/mips/include/asm/topology.h:11, > from include/linux/topology.h:36, > from include/linux/gfp.h:9, > from include/linux/slab.h:15, > from include/linux/crypto.h:19, > from include/crypto/hash.h:11, > from include/linux/uio.h:10, > from include/linux/socket.h:8, > from include/linux/compat.h:15, > from arch/mips/kernel/asm-offsets.c:12: > arch/mips/include/asm/mach-ip27/topology.h:25:39: error: 'MAX_COMPACT_NODES' undeclared here (not in a function) > 25 | extern unsigned char __node_distances[MAX_COMPACT_NODES][MAX_COMPACT_NODES]; > | ^~~~~~~~~~~~~~~~~ > include/linux/topology.h: In function 'numa_node_id': > >> arch/mips/include/asm/mach-ip27/topology.h:16:27: error: implicit declaration of function 'cputonasid' [-Werror=implicit-function-declaration] > 16 | #define cpu_to_node(cpu) (cputonasid(cpu)) > | ^~~~~~~~~~ This happens when randconfig disables NUMA and has SGI_IP27 enabled. Before switch from discontigmem to sparsemem, there always was CONFIG_NEED_MULTIPLE_NODES=y because it was selected by DISCONTIGMEM. Without DISCONTIGMEM it is possible to have SPARSEMEM without NUMA for SGI_IP27 and as many things there rely on custom node definition, the build breaks. I don't remember small Origin or Onyx systems so I think it would be reasonable to make SGI_IP27 to select NUMA. If the below patch makes sense I'll resend it formally. diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 6fee1a133e9d..a7e40bb1e5bc 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -678,6 +678,7 @@ config SGI_IP27 select SYS_SUPPORTS_NUMA select SYS_SUPPORTS_SMP select MIPS_L1_CACHE_SHIFT_7 + select NUMA help This are the SGI Origin 200, Origin 2000 and Onyx 2 Graphics workstations. To compile a Linux kernel that runs on these, say Y -- Sincerely yours, Mike.