On 2021/2/5 14:58, Palmer Dabbelt wrote:
On Wed, 03 Feb 2021 06:23:43 PST (-0800), wangkefeng.w...@huawei.com
wrote:
The numa feature is useless for riscv32 platform(MAXPHYSMEM_1GB if
32bit),
I'm not convinced of that. There's no reason NUMA shouldn't work on
32-bit, it
doesn't depend on having a large amount of memory just having non-uniform
memory. I could buy the argument that build a 32-bit NUMA system
would be
wacky, but IIUC it works now and I don't see any reason to throw that
away.
I think the RV32 won't benefit from NUMA, there's no too much memory
support on RV32,
and it may increase the Image size, so I decided to drop support for RV32.
and it should depends on SMP feature, this also fix the build error,
I can buy that CONFIG_NUMA doesn't really make sense without
CONFIG_SMP, as
there's not a whole lot to do, but I also don't see any reason from
disallowing
users from picking it. arm64 allows !SMP && NUMA, and I don't see any
reason
it wouldn't work just as well for us.
ARM64 won' support !SMP after following patch, and for most
architecture, the NUMA feature
depends or select SMP feature.
commit 4b3dc9679cf779339d9049800803dfc3c83433d1
Author: Will Deacon <w...@kernel.org>
Date: Fri May 29 18:28:44 2015 +0100
arm64: force CONFIG_SMP=y and remove redundant #ifdefs
riscv64-buildroot-linux-gnu-ld: mm/page_alloc.o: in function `.L0 ':
page_alloc.c:(.text+0x4808): undefined reference to
`node_reclaim_distance'
The only instance of node_reclaim_distance I see in mm/page_alloc.c is
already
guarded with CONFIG_NUMA, but the definition of node_reclaim_distance
isn't.
I'll send out some patches to add the guard which might make sorting
this out
earlier, but I don't see it fixing any failures.