On Tue, Feb 20, 2024 at 07:36:00PM +0800, Rongwei Wang wrote: > A brief introduction > ==================== > > The NUMA emulation can fake more node base on a single > node system, e.g. ... > Lastly, it seems not a good choice to realize x86 and other genertic > archs separately. But it can indeed avoid some architecture related > APIs adjustments and alleviate future maintenance. Why is it a good choice? Copying 1k lines from x86 to a new place and having to maintain two copies does not sound like a good choice to me. > The previous RFC link see [1]. > > Any advice are welcome, Thanks! > > Change log > ========== > > RFC v1 -> v1 > * add new CONFIG_NUMA_FAKE for genertic archs. > * keep x86 implementation, realize numa emulation in driver/base/ for > genertic arch, e.g, arm64. > > [1] RFC v1: https://patchwork.kernel.org/project/linux-arm-kernel/cover/20231012024842.99703-1-rongwei.wang@xxxxxxxxxxxxxxxxx/ > > Rongwei Wang (2): > arch_numa: remove __init for early_cpu_to_node > numa: introduce numa emulation for genertic arch > > drivers/base/Kconfig | 9 + > drivers/base/Makefile | 1 + > drivers/base/arch_numa.c | 32 +- > drivers/base/numa_emulation.c | 909 ++++++++++++++++++++++++++++++++++ > drivers/base/numa_emulation.h | 41 ++ > include/asm-generic/numa.h | 2 +- > 6 files changed, 992 insertions(+), 2 deletions(-) > create mode 100644 drivers/base/numa_emulation.c > create mode 100644 drivers/base/numa_emulation.h > > -- > 2.32.0.3.gf3a3e56d6 > > -- Sincerely yours, Mike.