Messages in this thread |  | | Date | Thu, 04 Feb 2021 22:58:40 -0800 (PST) | Subject | Re: [PATCH -next] RISCV: Add some depends for NUMA | From | Palmer Dabbelt <> |
| |
On Wed, 03 Feb 2021 06:23:43 PST (-0800), wangkefeng.wang@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.
> 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.
> 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.
> Fixes: 4f0e8eef772e ("riscv: Add numa support for riscv64 platform") > Signed-off-by: Kefeng Wang <wangkefeng.wang@huawei.com> > --- > arch/riscv/Kconfig | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig > index 22fa17898d29..ac7f5801bd82 100644 > --- a/arch/riscv/Kconfig > +++ b/arch/riscv/Kconfig > @@ -312,6 +312,8 @@ endchoice > # Common NUMA Features > config NUMA > bool "NUMA Memory Allocation and Scheduler Support" > + depends on SMP > + depends on 64BIT > select GENERIC_ARCH_NUMA > select OF_NUMA > select ARCH_SUPPORTS_NUMA_BALANCING
|  |