[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <cover.1577694824.git.greentime.hu@sifive.com>
Date: Fri, 10 Jan 2020 18:46:23 +0800
From: Greentime Hu <greentime.hu@...ive.com>
To: greentime.hu@...ive.com, greentime@...nel.org, anup@...infault.org,
palmer@...belt.com, linux-riscv@...ts.infradead.org,
linux-kernel@...r.kernel.org, rppt@...ux.ibm.com,
gkulkarni@...vell.com, will@...nel.org, catalin.marinas@....com,
mark.rutland@....com, paul.walmsley@...ive.com, hch@....de
Subject: [RFC PATCH v2 0/4] riscv: Add numa support for riscv64 platform
riscv: Add numa support for riscv64 platform
This implementation is based on arm64 porting. It is tested with
qemu-system-riscv64, SiFive Unleashed board and OmniXtend FPGA platform.
There will be two nodes in /sys/devices/system/node if it is described in
dts and CONFIG_NUMA is enabled. We can use numastat/numactl/numademo to see
its status.
Changes in v2:
- split this patch to more patches to be more readable
- set cpu->hotplugable to 0 since it is not supported yet
- add more explanation for moving unflatten_device_tree() to paging_init()
Greentime Hu (4):
riscv: Add support pte_protnone and pmd_protnone if
CONFIG_NUMA_BALANCING
riscv: Move unflatten_device_tree() to paging_init() because
riscv_numa_init() needs the dt information.
riscv: Use variable this_cpu instead of smp_processor_id()
riscv: Add numa support for riscv64 platform
arch/riscv/Kconfig | 30 ++-
arch/riscv/include/asm/mmzone.h | 13 ++
arch/riscv/include/asm/numa.h | 46 ++++
arch/riscv/include/asm/pci.h | 10 +
arch/riscv/include/asm/pgtable.h | 20 ++
arch/riscv/kernel/setup.c | 26 ++-
arch/riscv/kernel/smpboot.c | 20 +-
arch/riscv/mm/Makefile | 1 +
arch/riscv/mm/init.c | 3 +
arch/riscv/mm/numa.c | 372 +++++++++++++++++++++++++++++++
10 files changed, 536 insertions(+), 5 deletions(-)
create mode 100644 arch/riscv/include/asm/mmzone.h
create mode 100644 arch/riscv/include/asm/numa.h
create mode 100644 arch/riscv/mm/numa.c
--
2.17.1
Powered by blists - more mailing lists