linux-sh.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Geert Uytterhoeven <geert@linux-m68k.org>
To: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Cc: Randy Dunlap <rdunlap@infradead.org>,
	linux-kernel@vger.kernel.org,
	Yoshinori Sato <ysato@users.sourceforge.jp>,
	Rich Felker <dalias@libc.org>,
	linux-sh@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH 6/7 v5] sh: fix Kconfig entry for NUMA => SMP
Date: Tue, 21 Mar 2023 09:32:05 +0100	[thread overview]
Message-ID: <CAMuHMdXEp2jpmXr7CTai7DU0Gqnadk_D8zPwQmoo+W-12RjfVQ@mail.gmail.com> (raw)
In-Reply-To: <CAMuHMdWyoQ--kc4-JDvcmNeWGZvT+w9UYSW5c7KeGB-bTQjLXg@mail.gmail.com>

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

  reply	other threads:[~2023-03-21  8:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-20 23:13 [PATCH 6/7 v5] sh: fix Kconfig entry for NUMA => SMP Randy Dunlap
2023-03-21  7:55 ` Geert Uytterhoeven
2023-03-21  8:10   ` John Paul Adrian Glaubitz
2023-03-21  8:19     ` Geert Uytterhoeven
2023-03-21  8:32       ` Geert Uytterhoeven [this message]
2023-03-21  8:38     ` D. Jeff Dionne
2023-03-21  8:42     ` Geert Uytterhoeven
2023-03-21  8:45       ` John Paul Adrian Glaubitz
2023-03-21  8:47         ` Geert Uytterhoeven
2023-03-21 15:15           ` John Paul Adrian Glaubitz
2023-03-21 15:16             ` Randy Dunlap

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAMuHMdXEp2jpmXr7CTai7DU0Gqnadk_D8zPwQmoo+W-12RjfVQ@mail.gmail.com \
    --to=geert@linux-m68k.org \
    --cc=dalias@libc.org \
    --cc=glaubitz@physik.fu-berlin.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=rdunlap@infradead.org \
    --cc=stable@vger.kernel.org \
    --cc=ysato@users.sourceforge.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).