lkml.org 
[lkml]   [2023]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH 6/7 v5] sh: fix Kconfig entry for NUMA => SMP
    On Tue, Mar 21, 2023 at 9:19 AM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
    > On Tue, Mar 21, 2023 at 9:10 AM John Paul Adrian Glaubitz
    > <glaubitz@physik.fu-berlin.de> wrote:
    > > On Tue, 2023-03-21 at 08:55 +0100, Geert Uytterhoeven wrote:
    > > > On Tue, Mar 21, 2023 at 12:13 AM Randy Dunlap <rdunlap@infradead.org> wrote:
    > > > > Fix SUPERH builds that select SYS_SUPPORTS_NUMA but do not select
    > > > > SYS_SUPPORTS_SMP and SMP.
    > > >
    > > > Perhaps because these SoCs do not support SMP?
    > >
    > > Well, there is actually a dual-core 7786 board available, see:
    > >
    > > > https://www.apnet.co.jp/product/superh/ap-sh4ad-0a.html
    > >
    > > Quoting:
    > >
    > > »The SH7786 is equipped with a dual-core SH-4A and has interfaces such as
    > > DDR3 SDRAM, PCI Express, USB, and display unit.«
    > >
    > > I seem to remember that Oleg Endo had such a dual-core SH4A board.
    > >
    > > Also, the Sega Saturn had two SH-2 CPUs:
    > >
    > > > https://en.wikipedia.org/wiki/Sega_Saturn#Technical_specifications
    >
    > But these are not the Kconfig entries changed by Randy's patch.
    >
    > > > > 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")
    > > > > Fixes: 55ba99eb211a ("sh: Add support for SH7786 CPU subtype.")
    > > > > Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
    > > >
    > > > > --- a/arch/sh/Kconfig
    > > > > +++ b/arch/sh/Kconfig
    > > > > @@ -442,6 +442,8 @@ config CPU_SUBTYPE_SH7785
    > > > > select CPU_SHX2
    > > > > select ARCH_SPARSEMEM_ENABLE
    > > > > select SYS_SUPPORTS_NUMA
    > > > > + select SYS_SUPPORTS_SMP
    > > > > + select SMP
    > > >
    > > > SH7785 is single-core.
    > > >
    > > > > select PINCTRL
    > > > >
    > > > > config CPU_SUBTYPE_SH7786
    > > > > @@ -476,6 +478,8 @@ config CPU_SUBTYPE_SH7722
    > > > > select CPU_SHX2
    > > > > select ARCH_SHMOBILE
    > > > > select ARCH_SPARSEMEM_ENABLE
    > > > > + select SYS_SUPPORTS_SMP
    > > > > + select SMP
    > > >
    > > > SH7722 is single-core.
    > > >
    > > > > select SYS_SUPPORTS_NUMA
    > > > > select SYS_SUPPORTS_SH_CMT
    > > > > select PINCTRL
    > > > > @@ -486,6 +490,8 @@ config CPU_SUBTYPE_SH7366
    > > > > select CPU_SHX2
    > > > > select ARCH_SHMOBILE
    > > > > select ARCH_SPARSEMEM_ENABLE
    > > > > + select SYS_SUPPORTS_SMP
    > > > > + select SMP
    > > >
    > > > Dunno about this one (no public info available).
    > > >
    > > > > select SYS_SUPPORTS_NUMA
    > > > > select SYS_SUPPORTS_SH_CMT
    > > >
    > > > Wasn't this fixed by commit 61bb6cd2f765b90c ("mm: move
    > > > node_reclaim_distance to fix NUMA without SMP") in v5.16?
    > > >
    > > > It is not sufficient, after that you run into:
    > > >
    > > > 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);
    > > >
    > > > which you reported before in
    > > > https://lore.kernel.org/all/b5bdea22-ed2f-3187-6efe-0c72330270a4@infradead.org/
    > >
    > > Without the patch, I am getting:
    > >
    > > CC fs/fat/nfs.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
    >
    > Which is a different error than in this patch description?
    > I am preparing a fix...

    https://lore.kernel.org/67261c513706241d479b8b4cf46eb4e6fb0417ba.1679387262.git.geert+renesas@glider.be

    Gr{oetje,eeting}s,

    Geert

    --
    Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

    In personal conversations with technical people, I call myself a hacker. But
    when I'm talking to journalists I just say "programmer" or something like that.
    -- Linus Torvalds

    \
     
     \ /
      Last update: 2023-03-27 01:10    [W:3.975 / U:0.028 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site