On 3/20/23 13:13, John Paul Adrian Glaubitz wrote: > Hi Randy! > > On Sun, 2023-03-19 at 21:20 +0100, John Paul Adrian Glaubitz wrote: >> On Sun, 2023-03-05 at 20:00 -0800, Randy Dunlap wrote: >>> Fix SUPERH builds that select SYS_SUPPORTS_NUMA but do not select >>> SYS_SUPPORTS_SMP and SMP. >>> >>> kernel/sched/topology.c is only built for CONFIG_SMP and then the NUMA >>> code + data inside topology.c is only built when CONFIG_NUMA is >>> set/enabled, so these arch/sh/ configs need to select SMP and >>> SYS_SUPPORTS_SMP to build the NUMA support. >>> >>> Fixes this build error in multiple SUPERH configs: >>> >>> mm/page_alloc.o: In function `get_page_from_freelist': >>> page_alloc.c:(.text+0x2ca8): undefined reference to `node_reclaim_distance' >>> >>> Fixes: 357d59469c11 ("sh: Tidy up dependencies for SH-2 build.") >>> Fixes: 9109a30e5a54 ("sh: add support for sh7366 processor") >>> Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> >>> Reported-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> >>> Cc: John Paul Adrian Glaubitz <glaubitz@xxxxxxxxxxxxxxxxxxx> >>> Cc: Yoshinori Sato <ysato@xxxxxxxxxxxxxxxxxxxx> >>> Cc: Rich Felker <dalias@xxxxxxxx> >>> Cc: linux-sh@xxxxxxxxxxxxxxx >>> Cc: stable@xxxxxxxxxxxxxxx >>> --- >>> v2: skipped >>> v3: skipped >>> v4: refresh & resend >>> >>> arch/sh/Kconfig | 4 ++++ >>> 1 file changed, 4 insertions(+) >>> >>> diff -- a/arch/sh/Kconfig b/arch/sh/Kconfig >>> --- a/arch/sh/Kconfig >>> +++ b/arch/sh/Kconfig >>> @@ -477,6 +477,8 @@ config CPU_SUBTYPE_SH7722 >>> select CPU_SHX2 >>> select ARCH_SHMOBILE >>> select ARCH_SPARSEMEM_ENABLE >>> + select SYS_SUPPORTS_SMP >>> + select SMP >>> select SYS_SUPPORTS_NUMA >>> select SYS_SUPPORTS_SH_CMT >>> select PINCTRL >>> @@ -487,6 +489,8 @@ config CPU_SUBTYPE_SH7366 >>> select CPU_SHX2 >>> select ARCH_SHMOBILE >>> select ARCH_SPARSEMEM_ENABLE >>> + select SYS_SUPPORTS_SMP >>> + select SMP >>> select SYS_SUPPORTS_NUMA >>> select SYS_SUPPORTS_SH_CMT >>> >> >> It seems that we need this change for these configurations as well: >> >> - config CPU_SHX3 >> - config CPU_SUBTYPE_SH7785 >> >> Although I can trigger a build failure for CPU_SUBTYPE_SH7785 only when >> setting CONFIG_NUMA=y: >> >> CC net/ipv6/addrconf_core.o >> mm/slab.c: In function 'slab_memory_callback': >> mm/slab.c:1127:23: error: implicit declaration of function 'init_cache_node_node'; did you mean 'drain_cache_node_node'? [-Werror=implicit-function-declaration] >> 1127 | ret = init_cache_node_node(nid); >> | ^~~~~~~~~~~~~~~~~~~~ >> | drain_cache_node_node >> >> I would expect this error to be reproducible for CPU_SHX3 as well when >> CONFIG_NUMA=y but CONFIG_SMP=n. But for some reason, I am not seeing >> the error then. > > Can you make this change for config CPU_SUBTYPE_SH7785 as well? > > Then the change should be fine. Will do. Thanks. -- ~Randy