[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v5 0/5] RISC-V multi-socket support
From: |
Anup Patel |
Subject: |
[PATCH v5 0/5] RISC-V multi-socket support |
Date: |
Fri, 29 May 2020 17:16:36 +0530 |
This series adds multi-socket support for RISC-V virt machine and
RISC-V spike machine. The multi-socket support will help us improve
various RISC-V operating systems, firmwares, and bootloader to
support RISC-V NUMA systems.
These patch can be found in riscv_multi_socket_v5 branch at:
https://github.com/avpatel/qemu.git
To try this patches, we will need: Linux multi-PLIC improvements
support which can be found in plic_imp_v2 branch at:
https://github.com/avpatel/linux.git
Changes since v4:
- Re-arrange patches and move CLINT and PLIC patches before other
patches because these are already reviewed
- Added PATCH3 for common RISC-V multi-socket helpers
- Added support for "-numa cpu,node-id" option in PATCH4 and PATCH5
Changes since v3:
- Use "-numa" QEMU options to populate sockets instead of custom
"multi-socket" sub-option in machine name
Changes since v2:
- Dropped PATCH1 as it is not required any more
- Added "multi-socket" sub-option for Spike and Virt machine
which can be used to enable/disable mult-socket support
Changes since v1:
- Fixed checkpatch errors and warnings
- Added PATCH1 for knowning whether "sockets" sub-option was specified
- Remove SPIKE_CPUS_PER_SOCKET_MIN and SPIKE_CPUS_PER_SOCKET_MAX in PATCH3
- Remove VIRT_CPUS_PER_SOCKET_MIN and VIRT_CPUS_PER_SOCKET_MAX in PATCH5
Anup Patel (5):
hw/riscv: Allow creating multiple instances of CLINT
hw/riscv: Allow creating multiple instances of PLIC
hw/riscv: Add helpers for RISC-V multi-socket NUMA machines
hw/riscv: spike: Allow creating multiple NUMA sockets
hw/riscv: virt: Allow creating multiple NUMA sockets
hw/riscv/Makefile.objs | 1 +
hw/riscv/numa.c | 242 +++++++++++++++
hw/riscv/sifive_clint.c | 20 +-
hw/riscv/sifive_e.c | 4 +-
hw/riscv/sifive_plic.c | 24 +-
hw/riscv/sifive_u.c | 4 +-
hw/riscv/spike.c | 272 ++++++++++------
hw/riscv/virt.c | 530 ++++++++++++++++++--------------
include/hw/riscv/numa.h | 51 +++
include/hw/riscv/sifive_clint.h | 7 +-
include/hw/riscv/sifive_plic.h | 12 +-
include/hw/riscv/spike.h | 11 +-
include/hw/riscv/virt.h | 9 +-
13 files changed, 831 insertions(+), 356 deletions(-)
create mode 100644 hw/riscv/numa.c
create mode 100644 include/hw/riscv/numa.h
--
2.25.1
- [PATCH v5 0/5] RISC-V multi-socket support,
Anup Patel <=
- [PATCH v5 1/5] hw/riscv: Allow creating multiple instances of CLINT, Anup Patel, 2020/05/29
- [PATCH v5 3/5] hw/riscv: Add helpers for RISC-V multi-socket NUMA machines, Anup Patel, 2020/05/29
- [PATCH v5 4/5] hw/riscv: spike: Allow creating multiple NUMA sockets, Anup Patel, 2020/05/29
- [PATCH v5 2/5] hw/riscv: Allow creating multiple instances of PLIC, Anup Patel, 2020/05/29
- [PATCH v5 5/5] hw/riscv: virt: Allow creating multiple NUMA sockets, Anup Patel, 2020/05/29