Palmer Dabbelt
6a4aa4c94b
Merge patch series "Add ACPI NUMA support for RISC-V"
...
Haibo Xu <haibo1.xu@intel.com > says:
This patch series enable RISC-V ACPI NUMA support which was based on
the recently approved ACPI ECR[1].
Patch 1/4 add RISC-V specific acpi_numa.c file to parse NUMA information
from SRAT and SLIT ACPI tables.
Patch 2/4 add the common SRAT RINTC affinity structure handler.
Patch 3/4 change the ACPI_NUMA to a hidden option since it would be selected
by default on all supported platform.
Patch 4/4 replace pr_info with pr_debug in arch_acpi_numa_init() to avoid
potential boot noise on ACPI platforms that are not NUMA.
Based-on: https://github.com/linux-riscv/linux-riscv/tree/for-next
[1] https://drive.google.com/file/d/1YTdDx2IPm5IeZjAW932EYU-tUtgS08tX/view?usp=sharing
Testing:
Since the ACPI AIA/PLIC support patch set is still under upstream review,
hence it is tested using the poll based HVC SBI console and RAM disk.
1) Build latest Qemu with the following patch backported
42bd4eeefd
2) Build latest EDK-II
https://github.com/tianocore/edk2/blob/master/OvmfPkg/RiscVVirt/README.md
3) Build Linux with the following configs enabled
CONFIG_RISCV_SBI_V01=y
CONFIG_SERIAL_EARLYCON_RISCV_SBI=y
CONFIG_NONPORTABLE=y
CONFIG_HVC_RISCV_SBI=y
CONFIG_NUMA=y
CONFIG_ACPI_NUMA=y
4) Build buildroot rootfs.cpio
5) Launch the Qemu machine
qemu-system-riscv64 -nographic \
-machine virt,pflash0=pflash0,pflash1=pflash1 -smp 4 -m 8G \
-blockdev node-name=pflash0,driver=file,read-only=on,filename=RISCV_VIRT_CODE.fd \
-blockdev node-name=pflash1,driver=file,filename=RISCV_VIRT_VARS.fd \
-object memory-backend-ram,size=4G,id=m0 \
-object memory-backend-ram,size=4G,id=m1 \
-numa node,memdev=m0,cpus=0-1,nodeid=0 \
-numa node,memdev=m1,cpus=2-3,nodeid=1 \
-numa dist,src=0,dst=1,val=30 \
-kernel linux/arch/riscv/boot/Image \
-initrd buildroot/output/images/rootfs.cpio \
-append "root=/dev/ram ro console=hvc0 earlycon=sbi"
[ 0.000000] ACPI: SRAT: Node 0 PXM 0 [mem 0x80000000-0x17fffffff]
[ 0.000000] ACPI: SRAT: Node 1 PXM 1 [mem 0x180000000-0x27fffffff]
[ 0.000000] NUMA: NODE_DATA [mem 0x17fe3bc40-0x17fe3cfff]
[ 0.000000] NUMA: NODE_DATA [mem 0x27fff4c40-0x27fff5fff]
...
[ 0.000000] ACPI: NUMA: SRAT: PXM 0 -> HARTID 0x0 -> Node 0
[ 0.000000] ACPI: NUMA: SRAT: PXM 0 -> HARTID 0x1 -> Node 0
[ 0.000000] ACPI: NUMA: SRAT: PXM 1 -> HARTID 0x2 -> Node 1
[ 0.000000] ACPI: NUMA: SRAT: PXM 1 -> HARTID 0x3 -> Node 1
* b4-shazam-merge:
ACPI: NUMA: replace pr_info with pr_debug in arch_acpi_numa_init
ACPI: NUMA: change the ACPI_NUMA to a hidden option
ACPI: NUMA: Add handler for SRAT RINTC affinity structure
ACPI: RISCV: Add NUMA support based on SRAT and SLIT
Link: https://lore.kernel.org/r/cover.1718268003.git.haibo1.xu@intel.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com >
2024-07-22 10:31:51 -07:00
..
2024-04-18 12:09:14 +01:00
2024-06-05 15:52:34 +02:00
2024-04-05 16:49:14 +02:00
2024-07-15 08:02:26 -07:00
2024-03-07 21:52:03 +00:00
2024-03-19 16:11:42 +01:00
2024-02-26 13:08:45 +02:00
2024-04-25 14:41:18 +05:30
2024-07-15 08:49:59 -07:00
2024-07-19 12:39:34 -07:00
2024-04-23 15:37:20 +08:00
2024-03-27 10:25:54 +00:00
2024-07-02 11:40:37 +02:00
2024-03-05 13:59:43 +00:00
2024-06-23 09:53:32 +03:00
2024-06-30 11:29:24 +01:00
2024-04-15 08:10:26 -06:00
2024-06-24 18:16:45 +01:00
2024-07-18 09:34:02 -07:00
2024-07-04 12:29:07 +02:00
2024-07-19 11:57:55 -07:00
2024-05-16 08:56:49 -07:00
2024-03-21 15:09:29 -07:00
2024-04-24 11:06:26 -07:00
2024-07-05 09:35:51 +01:00
2024-04-25 20:55:49 -07:00
2024-07-03 14:07:14 +01:00
2024-03-29 00:30:16 +05:30
2024-07-17 17:42:20 -07:00
2024-04-01 12:29:44 +02:00
2024-07-05 18:30:00 -07:00
2024-06-12 09:20:13 +02:00
2024-04-02 10:47:43 +08:00
2024-06-26 20:09:28 +01:00
2024-04-30 10:44:53 -06:00
2024-05-23 12:04:36 -07:00
2024-07-09 11:16:42 +02:00
2024-05-04 18:26:50 +05:30
2024-07-15 18:03:43 -07:00
2024-03-12 17:33:41 +02:00
2024-07-18 17:17:30 -07:00
2024-07-10 13:56:22 +02:00
2024-04-26 12:07:23 +02:00
2024-07-22 10:31:51 -07:00
2024-03-08 15:26:46 -06:00
2024-05-26 14:40:39 -07:00
2024-04-26 10:33:05 +02:00
2024-04-24 12:08:01 +02:00
2024-04-18 18:29:50 +01:00
2024-07-17 22:13:12 -07:00
2024-05-02 20:35:57 +02:00
2024-07-04 16:45:25 +01:00
2024-07-13 21:31:57 -07:00
2024-06-12 11:00:50 -06:00
2024-02-28 13:53:39 +02:00
2024-04-01 10:49:28 +01:00
2024-05-21 15:29:01 -07:00
2024-06-20 15:19:17 -06:00
2024-06-28 10:29:42 -06:00
2024-04-17 08:44:03 -06:00
2024-07-15 14:20:22 -07:00
2024-04-14 22:00:43 +09:00
2024-04-24 16:01:10 -07:00
2024-03-11 15:37:23 -07:00
2024-07-12 22:14:15 +02:00
2024-07-09 17:01:46 +02:00
2024-04-25 20:55:59 -07:00
2024-07-14 20:38:34 -07:00
2024-04-11 21:37:48 -04:00
2024-04-29 16:28:07 -07:00
2024-07-09 17:01:46 +02:00
2024-05-21 09:51:42 -07:00
2024-02-23 17:48:22 -08:00
2024-07-08 01:51:05 -06:00
2024-07-10 10:19:59 -07:00
2024-06-10 08:50:09 +02:00
2024-06-17 17:45:34 +02:00
2024-05-15 10:05:24 -04:00
2024-05-26 08:45:09 -10:00
2024-04-16 12:10:42 -10:00
2024-07-16 16:42:37 -07:00
2024-02-21 22:11:51 -08:00
2024-03-28 15:35:38 -07:00
2024-06-03 11:18:50 +02:00
2024-06-03 11:18:50 +02:00
2024-07-10 09:53:39 -04:00
2024-02-22 10:24:53 -08:00
2024-04-09 22:06:00 -07:00
2024-04-25 20:55:57 -07:00
2024-06-24 18:29:20 +02:00
2024-05-09 09:25:08 -07:00
2024-06-14 19:08:32 +02:00
2024-05-22 14:12:11 -07:00
2024-07-18 10:33:14 -07:00
2024-05-30 15:06:26 -07:00
2024-06-17 20:42:57 +02:00
2024-05-08 09:53:00 -07:00
2024-04-24 14:22:41 +01:00
2024-04-23 09:03:37 +09:00
2024-06-10 08:50:01 +02:00
2024-07-09 17:58:20 +02:00
2024-07-15 15:03:09 -07:00
2024-06-17 17:45:31 +02:00
2024-06-28 18:38:33 +01:00
2024-04-08 07:39:16 -10:00
2024-04-23 14:59:01 +10:00
2024-02-23 17:48:21 -08:00
2024-07-10 13:19:50 -07:00
2024-05-02 12:12:08 -07:00
2024-05-05 17:53:55 -07:00
2024-02-22 15:27:19 -08:00
2024-07-15 11:39:44 -07:00
2024-06-30 12:27:16 +01:00
2024-06-12 11:29:36 -04:00
2024-07-19 10:48:44 -07:00
2024-06-04 15:53:36 +02:00
2024-05-14 11:43:40 +02:00
2024-06-25 17:15:06 -07:00
2024-03-07 20:37:04 +00:00
2024-06-11 12:57:49 -05:00
2024-02-20 14:22:55 -05:00
2024-02-20 14:22:51 -05:00
2024-04-15 13:56:32 -03:00
2024-04-26 12:07:24 +02:00
2024-05-27 09:50:05 +02:00
2024-04-25 20:55:59 -07:00
2024-05-06 13:28:59 -07:00
2024-06-19 20:05:34 +05:30
2024-05-20 10:23:39 -07:00
2024-05-09 19:00:29 +02:00
2024-06-21 15:31:56 +05:30
2024-04-26 11:57:36 +02:00
2024-03-07 10:29:36 -08:00
2024-03-19 16:11:42 +01:00
2024-04-15 11:19:53 -07:00
2024-07-12 10:06:01 +02:00
2024-03-12 23:08:29 -07:00
2024-04-15 11:02:51 -07:00
2024-04-08 16:05:14 +02:00
2024-05-25 10:48:57 -07:00
2024-07-15 08:02:30 -07:00
2024-04-09 17:14:57 -04:00
2024-05-14 00:31:43 -07:00
2024-05-28 15:57:23 +02:00
2024-05-11 00:41:15 +00:00
2024-05-27 11:08:31 +02:00
2024-04-15 16:03:24 -04:00
2024-06-28 10:36:45 +02:00
2024-07-09 17:01:46 +02:00
2024-05-21 15:29:01 -07:00
2024-05-06 11:06:04 +09:00
2024-03-07 22:02:12 +00:00
2024-02-22 15:38:52 -08:00
2024-03-16 08:29:48 +01:00
2024-06-19 13:32:04 -07:00
2024-05-01 23:18:47 +09:00
2024-05-19 14:36:17 -07:00
2024-07-02 06:20:49 +02:00
2024-07-15 14:20:22 -07:00
2024-07-03 10:36:14 +02:00
2024-04-29 15:01:42 +01:00
2024-02-27 16:55:34 -05:00
2024-06-05 09:52:38 +02:00
2024-06-18 16:25:50 +02:00
2024-07-18 13:36:33 -07:00
2024-03-13 00:03:21 -07:00
2024-03-07 22:10:01 +00:00
2024-03-13 21:22:26 -04:00
2024-04-01 21:44:34 -07:00
2024-04-25 20:55:51 -07:00
2024-05-19 14:40:44 -07:00
2024-05-27 16:50:03 +02:00
2024-03-07 21:42:38 +00:00
2024-07-01 14:48:16 +02:00
2024-02-17 16:16:11 +00:00
2024-06-27 11:00:45 +02:00
2024-02-22 10:24:41 -08:00
2024-02-17 09:09:16 +08:00
2024-02-19 22:27:57 +01:00
2024-02-19 09:37:59 +01:00
2024-06-05 19:19:24 -07:00
2024-05-19 09:21:03 -07:00
2024-06-16 13:41:53 +08:00
2024-06-03 20:25:28 -07:00
2024-04-23 13:16:03 +02:00
2024-05-13 16:13:19 +02:00
2024-07-13 11:11:58 +02:00
2024-06-12 13:04:25 +02:00
2024-02-28 19:36:39 -08:00
2024-07-08 16:22:49 -07:00
2024-04-25 21:07:02 -07:00
2024-04-09 17:14:57 -04:00
2024-04-30 21:10:37 +02:00
2024-06-21 14:52:12 +02:00
2024-05-31 16:28:19 +03:00
2024-07-08 11:40:57 -05:00
2024-02-26 00:38:17 +02:00
2024-06-06 14:35:01 -07:00
2024-07-15 13:49:10 -07:00
2024-04-15 08:10:26 -06:00
2024-07-03 15:45:47 +01:00
2024-05-19 09:21:03 -07:00
2024-07-19 09:59:58 -07:00
2024-05-28 11:14:14 -05:00
2024-05-07 13:29:45 +02:00
2024-03-01 08:42:30 +00:00
2024-07-04 09:25:59 +02:00
2024-04-11 12:29:40 +02:00
2024-04-12 17:08:05 +02:00
2024-05-15 17:02:08 -05:00
2024-04-08 16:34:18 +02:00
2024-07-08 23:59:37 -04:00
2024-02-19 09:38:00 +01:00
2024-03-22 11:18:16 +01:00
2024-02-26 10:10:07 +01:00
2024-06-17 12:30:07 -07:00
2024-04-12 17:08:05 +02:00
2024-03-18 10:33:06 -04:00
2024-05-19 14:02:03 -07:00
2024-05-22 11:53:02 -07:00
2024-04-25 21:07:02 -07:00
2024-02-17 16:20:41 +01:00
2024-05-16 07:23:30 +09:00
2024-06-05 19:19:26 -07:00
2024-05-12 03:16:47 -04:00
2024-04-19 12:15:18 -04:00
2024-05-03 10:44:42 +01:00
2024-03-07 08:48:03 +00:00
2024-03-07 08:48:03 +00:00
2024-03-07 08:45:31 +00:00
2024-07-04 17:07:01 +01:00
2024-07-04 11:52:32 +02:00
2024-04-01 10:49:27 +01:00
2024-06-13 23:05:27 +02:00
2024-02-22 10:24:54 -08:00
2024-02-22 15:38:55 -08:00
2024-05-09 15:48:01 +02:00
2024-06-24 16:41:22 -07:00
2024-06-24 16:41:22 -07:00
2024-07-14 19:00:16 -04:00
2024-07-18 17:27:43 -07:00
2024-07-16 14:50:44 -07:00
2024-02-21 09:34:26 +01:00
2024-05-07 15:17:52 -07:00
2024-06-10 19:52:44 -07:00
2024-07-01 19:28:58 +01:00
2024-02-21 14:56:58 -08:00
2024-06-06 07:55:51 +03:00
2024-05-07 10:37:00 -07:00
2024-02-22 10:24:40 -08:00
2024-05-05 17:53:25 -07:00
2024-03-16 10:04:12 -07:00
2024-04-25 20:55:48 -07:00
2024-04-25 20:55:56 -07:00
2024-02-22 10:24:55 -08:00
2024-07-03 19:06:14 +05:30
2024-07-15 08:02:26 -07:00
2024-02-22 15:38:52 -08:00
2024-07-12 06:45:23 -10:00
2024-07-15 10:42:30 +02:00
2024-07-18 15:08:12 -07:00
2024-03-26 11:07:22 -07:00
2024-04-25 20:56:24 -07:00
2024-03-06 13:04:18 -08:00
2024-02-22 10:24:41 -08:00
2024-04-12 04:40:27 -04:00
2024-07-03 22:40:36 -07:00
2024-05-22 11:31:10 +02:00
2024-07-09 17:01:46 +02:00
2024-05-14 00:31:43 -07:00
2024-05-15 17:02:08 -05:00
2024-05-21 10:09:28 -07:00
2024-04-11 17:34:41 +01:00
2024-06-05 17:03:57 +02:00
2024-07-15 08:02:26 -07:00
2024-05-13 18:19:09 -06:00
2024-06-24 16:41:23 -07:00
2024-07-11 18:11:31 -07:00
2024-02-29 14:24:56 -08:00
2024-05-28 14:34:15 +02:00
2024-06-10 13:15:40 +01:00
2024-07-08 13:47:25 -04:00
2024-07-08 13:47:27 -04:00
2024-05-20 11:09:20 -04:00
2024-07-08 13:47:51 -04:00
2024-07-08 13:47:26 -04:00
2024-05-08 08:41:29 -07:00
2024-03-12 12:34:11 -07:00
2024-03-01 12:23:44 +01:00
2024-06-28 10:37:29 +02:00
2024-06-16 10:17:57 +03:00
2024-06-24 12:53:43 -07:00
2024-03-02 15:18:08 -08:00
2024-07-15 14:20:22 -07:00
2024-05-03 07:26:38 +02:00
2024-06-10 11:14:52 +01:00
2024-05-01 23:18:48 +09:00
2024-05-03 07:49:13 -05:00
2024-07-08 17:40:30 -06:00
2024-04-12 15:07:52 +08:00
2024-05-19 22:29:43 -05:00
2024-03-22 16:25:31 -07:00
2024-03-06 13:04:17 -08:00
2024-02-22 10:24:52 -08:00
2024-04-25 20:56:14 -07:00
2024-04-25 20:56:35 -07:00
2024-03-04 17:01:20 -08:00
2024-07-03 22:40:38 -07:00
2024-06-24 20:52:10 -07:00
2024-04-25 20:56:04 -07:00
2024-04-25 20:56:44 -07:00
2024-07-03 22:40:37 -07:00
2024-03-26 11:07:20 -07:00
2024-04-25 12:37:12 -07:00
2024-07-03 16:44:22 +02:00
2024-05-02 17:48:09 -04:00
2024-06-28 09:52:05 +02:00
2024-07-19 12:39:34 -07:00
2024-07-04 14:40:53 +00:00
2024-07-04 14:40:53 +00:00
2024-06-12 13:20:56 +02:00
2024-07-19 19:03:18 -07:00
2024-06-17 15:15:46 +02:00
2024-06-17 15:15:46 +02:00
2024-04-25 20:55:59 -07:00
2024-07-09 13:26:37 +02:00
2024-06-15 10:43:05 -07:00
2024-05-05 17:53:42 -07:00
2024-07-15 08:02:26 -07:00
2024-06-18 13:28:26 +02:00
2024-03-13 12:53:53 -07:00
2024-03-13 12:53:53 -07:00
2024-02-25 12:05:23 +01:00
2024-04-15 15:46:56 +02:00
2024-07-09 12:59:52 +02:00
2024-06-26 11:17:20 +05:30
2024-04-03 16:51:37 +02:00
2024-05-28 21:53:51 +02:00
2024-06-24 21:41:41 +02:00
2024-02-20 09:23:52 +01:00
2024-05-31 12:57:43 +01:00
2024-06-05 16:52:36 +02:00
2024-07-04 15:41:44 +02:00
2024-02-25 02:10:32 -05:00
2024-03-01 12:23:44 +01:00
2024-04-27 11:17:48 -07:00
2024-03-25 19:50:09 +00:00
2024-06-07 19:46:39 +08:00
2024-02-22 10:24:47 -08:00
2024-04-25 20:55:59 -07:00
2024-03-28 10:09:02 +00:00
2024-07-10 17:52:47 +02:00
2024-03-26 19:34:12 +00:00
2024-07-13 21:36:36 -07:00
2024-06-03 17:26:26 -07:00
2024-04-09 15:11:49 +02:00
2024-07-04 13:54:17 -07:00
2024-02-29 13:38:02 -08:00
2024-07-10 23:05:45 +01:00
2024-07-02 19:49:54 +02:00
2024-02-21 11:53:25 +01:00
2024-04-25 20:55:57 -07:00
2024-04-02 18:03:32 -07:00
2024-05-13 18:09:56 -04:00
2024-05-05 17:53:45 -07:00
2024-03-08 12:05:10 +01:00
2024-04-03 09:59:38 +01:00
2024-04-08 16:39:16 +02:00
2024-04-08 16:39:16 +02:00
2024-07-10 07:59:03 +02:00
2024-07-18 13:36:33 -07:00
2024-04-19 15:17:37 +01:00
2024-06-18 14:04:03 +02:00
2024-04-25 20:56:13 -07:00
2024-06-13 14:26:50 -04:00
2024-05-02 16:28:15 +02:00
2024-06-24 16:14:48 +02:00
2024-06-24 16:09:37 +02:00
2024-03-03 15:06:58 -08:00
2024-06-28 10:48:23 +01:00
2024-04-09 10:53:44 +02:00
2024-04-16 15:39:51 -07:00
2024-04-25 20:55:59 -07:00
2024-07-02 18:59:33 -07:00
2024-07-02 12:06:50 +02:00
2024-05-19 09:21:03 -07:00
2024-07-03 12:24:20 +02:00
2024-03-07 20:21:39 +00:00
2024-03-11 19:37:56 -07:00
2024-07-16 19:28:34 -07:00
2024-04-25 20:55:59 -07:00
2024-06-05 16:52:36 +02:00
2024-06-18 10:13:37 -07:00
2024-04-15 11:29:48 +02:00
2024-04-05 11:21:31 -07:00
2024-02-22 15:38:55 -08:00
2024-06-20 15:19:17 -06:00
2024-05-04 18:57:21 +02:00
2024-07-05 09:35:51 +01:00
2024-02-29 13:38:01 -08:00
2024-02-29 22:34:42 -08:00
2024-06-06 08:55:20 -07:00
2024-07-03 22:40:37 -07:00
2024-04-16 15:39:50 -07:00
2024-07-10 07:59:03 +02:00
2024-06-10 15:03:30 -05:00
2024-07-18 12:19:20 -07:00
2024-06-03 15:16:15 +02:00
2024-06-04 15:56:45 +02:00
2024-07-04 02:02:33 -06:00
2024-07-09 13:26:34 +02:00
2024-02-20 13:36:34 +01:00
2024-04-08 11:49:02 +01:00
2024-04-03 13:58:20 +02:00
2024-04-03 09:19:31 +02:00
2024-07-12 15:14:56 +02:00
2024-05-06 17:39:09 +02:00
2024-04-19 07:52:45 +03:00
2024-06-21 18:10:15 +02:00
2024-04-01 10:36:34 +02:00
2024-06-03 11:18:51 +02:00
2024-04-01 10:36:35 +02:00
2024-04-22 16:13:06 +02:00
2024-07-05 02:12:27 +03:00
2024-03-27 07:52:34 -07:00
2024-06-04 10:37:44 -04:00
2024-03-06 13:27:00 -05:00
2024-05-04 04:25:37 -04:00
2024-03-18 10:33:06 -04:00
2024-06-17 20:42:57 +02:00
2024-05-04 18:45:11 +02:00
2024-05-06 12:05:00 +02:00
2024-07-01 15:46:36 +02:00
2024-04-05 22:31:37 -07:00
2024-05-15 12:34:46 -07:00
2024-03-07 21:52:59 +00:00
2024-04-07 02:42:36 -04:00
2024-02-21 15:19:03 +01:00
2024-06-12 08:44:28 +09:00
2024-07-10 13:58:24 +02:00
2024-02-22 15:27:20 -08:00
2024-03-19 02:45:51 -04:00
2024-06-21 12:47:01 -06:00
2024-05-31 15:15:51 -06:00
2024-07-17 05:20:58 -04:00
2024-07-04 11:00:31 -04:00
2024-04-26 13:26:53 +02:00
2024-04-25 20:55:57 -07:00
2024-02-23 17:48:22 -08:00
2024-04-25 20:56:04 -07:00
2024-04-17 13:37:23 +02:00
2024-05-27 13:51:29 +02:00
2024-02-22 15:38:51 -08:00
2024-06-24 20:36:08 +03:00
2024-06-24 18:16:44 +01:00
2024-06-07 06:24:16 -10:00
2024-05-05 17:53:51 -07:00
2024-05-19 09:21:03 -07:00
2024-04-25 20:55:48 -07:00
2024-04-25 20:55:47 -07:00